如何在 Ubuntu 上安装和使用 Nginx?

简介: ginx(发音为“engine-x”)是一种流行的 Web 服务器软件,以其高性能和可靠性而闻名。它是许多流行网站使用的开源软件,包括 Netflix、GitHub 和 WordPress。Nginx 可以用作 Web 服务器、负载均衡器、反向代理和 HTTP 缓存等。

ginx(发音为“engine-x”)是一种流行的 Web 服务器软件,以其高性能和可靠性而闻名。它是许多流行网站使用的开源软件,包括 Netflix、GitHub 和 WordPress。Nginx 可以用作 Web 服务器、负载均衡器、反向代理和 HTTP 缓存等。

它以其高性能、稳定性和可扩展性而闻名。对于托管需要快速可靠的网络托管的网站、应用程序和服务来说,它是一个绝佳的选择。按照本指南,您可以在 Ubuntu 计算机上安装和设置 Nginx 并提供网页服务。

一、在 Ubuntu 上安装 Nginx

1、前提条件

在 Ubuntu 上安装 Nginx 之前,您需要满足一些先决条件:
①、安装Ubuntu系统的服务器
推荐阿里云这样厂商的服务器,比较稳定。

阿里云服务器:https://iil.ink/aliecs
②、服务器的 root 用户身份登录或使用命令来实现sudo。

按照以下步骤在 Ubuntu 系统上安装 Apache。

步骤 1. 更新 Ubuntu

始终建议在安装任何新软件之前将 Ubuntu 服务器更新到最新版本。您可以通过在终端中运行以下命令来完成此操作:

sudo apt-get update
sudo apt-get upgrade

步骤 2. 配置其他现有 Web 服务器

如果您的 Ubuntu 服务器上安装了其他 Web 服务器(例如 Apache),请在安装 Nginx 之前卸载它们。这将避免任何冲突或端口绑定问题。

sudo apt-get remove apache2

或者,如果您想与 Apache 一起运行 Nginx,您可以选择使用 Nginx 作为 Apache 的反向代理。此配置允许 Nginx 处理传入请求并将其转发给 Apache 进行处理。此设置可以提供两个 Web 服务器的优点。

步骤3.安装Nginx

Nginx 在 Ubuntu 存储库中可用。因此,您不需要添加任何其他第三方存储库。相反,在终端上执行以下命令来安装 Nginx。

sudo apt install nginx

image.png

步骤 4. 启动 Nginx:

安装后,Nginx 应该会自动启动。但是,如果安装后未启动该服务,您可以运行以下命令来启动该服务。

sudo systemctl start nginx

步骤5.检查Nginx状态:

您可以使用以下命令检查 Nginx 的状态:

sudo systemctl status nginx

该命令将显示 Nginx 的当前状态。
image.png
从上图中,您可以看到Nginx服务在我们的系统上成功运行。

提示:如果启动 Nginx 服务时出现错误,很有可能是 80 端口已被使用。Nginx 默认使用端口 80 进行 HTTP 流量。如果另一个服务已经使用了80端口,Nginx将无法启动。要检查80端口是否被使用,可以运行以下命令:

sudo lsof -i :80

如果另一个服务使用端口 80,您可以停止该服务或将 Nginx 配置为使用其他端口。

步骤 6. 配置防火墙

如果您已在系统上启用 UFW 防火墙,请确保对其进行适当配置,以允许 Nginx 使用的端口上的传入流量。Nginx 使用的默认端口是 HTTP 的 80 和 HTTPS 的 443。您可以运行以下命令来允许 Nginx 的流量。

sudo ufw allow 'Nginx HTTP'
sudo ufw allow 'Nginx HTTPS'

image.png

步骤 7. 测试 Nginx

要测试 Nginx 是否正常工作,请打开 Web 浏览器并在地址栏中输入 Ubuntu 服务器的 IP 地址。您可以通过运行以下任意命令来获取系统的 IP 地址。

ifconfig

Or,

ip a s

如果 Nginx 安装正确,您应该会看到默认的 Nginx 欢迎页面。

image.png

二、创建您自己的网站

当您在浏览器中输入系统的 IP 地址时看到的网站是默认的 Nginx 网站,位于该/var/www/html目录中。如果您想托管静态 HTML 站点,您可以删除目录中的文件 /var/www/html并添加自定义文件。

但是,如果要托管多个网站,则必须配置虚拟主机。虚拟主机配置允许您在单个服务器上运行多个网站或 Web 应用程序。每个虚拟主机都有自己的一组配置文件,允许您独立自定义每个网站的行为。

请按照以下步骤操作。

步骤 1. 为您的网站创建一个目录

使用该mkdir命令在 /var/www 文件夹中为您的网站文件创建一个目录。例如,我们将创建一个名为 test-website 的目录。

sudo mkdir /var/www/test-website

image.png

步骤 2. 为您的网站创建一个新的 HTML 文件:

现在,您需要将网站文件添加到此目录。对于本文,我们将创建一个名为“index.html”的简单 HTML 文件。但是,如果您使用的是 WordPress 或任何其他工具,则可以将文件提取到这个新目录。

sudo nano index.html

向文件中添加一些基本的 HTML 代码,例如:

<html>
    <head>
        <title>How to Install and Use Nginx on Ubuntu (fosslinux.com)</title>
    </head>
<body bgcolor="skyblue">
    <h1>How to Install and Use Nginx on Ubuntu (fosslinux.com)</h1>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed et dolor quis ex posuere euismod. Sed pharetra vel odio in venenatis. Donec eget eros vel nisi varius rutrum. Aliquam efficitur lacus at purus dictum lobortis. Duis ut diam dignissim, dapibus turpis vel, consectetur orci. Aliquam erat volutpat. Nulla facilisi. Praesent ut sapien sapien.
</p>
<img src="https://www.fosslinux.com/wp-content/uploads/2021/02/nginx-logo.png" alt="Nginx Logo">
</body>
</html>

保存(Ctrl + O,然后 Enter)并关闭文件(Ctrl + X)。

步骤 3. 为虚拟主机创建新的 Nginx 配置文件

下一步是为您的新网站创建配置文件。对于这篇文章,我们将其称为“test-website.conf”。启动终端并执行以下命令。

sudo nano /etc/nginx/sites-available/test-website.conf

在文件中添加以下配置:

server {
   
    listen 80;
    listen [::]:80;
    root /var/www/test_website;
    index index.html;

    server_name test-website.com www.test-website.com;

   location / {
   
      try_files {
   mathJaxContainer[0]}uri/ =404;
  }
}

此配置告诉 Nginx 侦听端口 80 并提供 /var/www/test-website 目录中的文件。它还将默认索引文件设置为index.html,并指定虚拟主机的域名。

image.png

保存(Ctrl + O,然后 Enter)并关闭文件(Ctrl + X)。

步骤 4. 启用虚拟主机

接下来,您需要创建一个符号链接来启用虚拟主机:

sudo ln -s /etc/nginx/sites-available/test-website.conf /etc/nginx/sites-enabled/

接下来,您需要运行测试来确认您的配置和语法是否正确。执行下面的命令。

sudo nginx -t

如果配置没问题,您可以继续重新启动 Nginx 以应用更改:

sudo systemctl restart nginx

image.png

恭喜,您已经创建了自己的网站并使用 Nginx 设置了虚拟主机。您现在可以通过在网络浏览器中输入您的域名或 IP 地址来访问您的网站。

步骤 5:测试您的网站

您可以通过在浏览器中输入 IP 地址来继续测试您的网站。

image.png

如果您使用了不同的端口号(例如 81),请在 IP 地址中指定它,如下所示。

192.168.1.27:81

Nginx 与 Apache对比

Nginx 和 Apache 是世界上最流行的两种 Web 服务器。虽然两者都有相同的目的,但一些关键的差异使它们有所不同。

性能

Nginx 以其高性能和低资源消耗而闻名。它旨在以低内存使用量处理许多并发连接。另一方面,Apache 可能是资源密集型的,并且可能需要更多的内存来处理相同的流量。

灵活性

Apache 是比 Nginx 更灵活的 Web 服务器。它支持许多模块,并且可以轻松定制以满足特定需求。另一方面,Nginx 的模块集更加有限,并且在定制方面不太灵活。

实用性

Nginx 通常被认为比 Apache 更容易配置和使用。其配置文件更加简单直观,可以快速轻松地进行设置。然而,Apache 的设置和配置可能更加复杂,尤其是对于初学者而言。

提示:Nginx 和 Apache 都有各自的优点和缺点。两者之间的选择取决于所服务的网站或应用程序的具体需求。

原文来自我的博客:如何在 Ubuntu 上安装和使用 Nginx?

目录
相关文章
|
6月前
|
Ubuntu Linux
任何Ubuntu用户都应安装的四大Linux应用程序
当然,这款程序不需要太多介绍。我们面对的是网上最庞大最完整的多媒体中心,由于丰富的插件,我们能够高度细化地定制其每一项功能。这是我们的Linux发行版不可或缺的必备软件。 我们可以通过运行以下命令来轻松安装Kodi:sudo apt install kodi。
|
6月前
|
Ubuntu 物联网 Linux
从零安装一个Linux操作系统几种方法,以Ubuntu18.04为例
一切就绪后,我们就可以安装操作系统了。当系统通过优盘引导起来之后,我们就可以看到跟虚拟机中一样的安装向导了。之后,大家按照虚拟机中的顺序安装即可。 好了,今天主要介绍了Ubuntu Server版操作系统的安装过程,关于如何使用该操作系统,及操作系统更深层的原理,还请关注本号及相关圈子。
|
6月前
|
Ubuntu Linux 网络安全
Linux服务器之Ubuntu的安装与配置
Ubuntu Desktop是目前最成功、最流行的图形界面的Linux发行版;而Ubuntu Server也在服务器端市场占据了较大的份额。今天为大家详细介绍了Ubuntu Server的安装与配置,希望对你能有所帮助。关于VMware、VirtualBox等虚拟化软件的使用,朱哥还会在后续的文章中为大家详细介绍,敬请关注!
|
4月前
|
Ubuntu 安全 iOS开发
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
269 5
|
4月前
|
NoSQL Ubuntu MongoDB
在Ubuntu 22.04上安装MongoDB 6.0的步骤
这些步骤应该可以在Ubuntu 22.04系统上安装MongoDB 6.0。安装过程中,如果遇到任何问题,可以查阅MongoDB的官方文档或者Ubuntu的相关帮助文档,这些资源通常提供了解决特定问题的详细指导。
440 18
|
5月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
337 18
|
5月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
361 18
|
5月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
464 17
|
5月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
383 15
|
5月前
|
存储 Ubuntu iOS开发
在Ubuntu 22.04系统上安装libimobiledevice的步骤
为了获取更多功能或者解决可能出现问题,请参考官方文档或者社区提供支持。
350 14

热门文章

最新文章