如何在 Ubuntu 20.04/22.04 上安装和配置 Nginx
介绍
Nginx 是一个免费的开源 Linux 应用程序,用于 Web 服务器。它通过将 Web 流量定向到特定服务器来充当反向代理服务器。
Nginx 用于安全和负载平衡,但也可以作为 Web 服务器独立运行。
本指南将帮助您在 Ubuntu 20.04 Linux (Focal Fossa) 上安装 Nginx。
先决条件
- 运行 Ubuntu 20.04 Linux 的系统
- 具有 sudo 或 root 权限的用户帐户
- 访问终端窗口/命令行(单击 活动 > 搜索 > 输入 终端)
步骤 1:更新软件存储库
在安装新软件之前刷新存储库列表很重要。这有助于确保安装了最新的更新和补丁。
打开终端窗口并输入以下内容:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo apt-get update
等等该过程完成。
第 2 步:从 Ubuntu 存储库安装 Nginx
Nginx 包含在 Ubuntu 20.04 默认存储库中。通过输入以下命令安装它:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo nala install nginx
第 3 步:验证安装
通过检查软件版本来验证 Nginx 是否正确安装。输入以下内容:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ nginx -v
nginx version: nginx/1.18.0 (Ubuntu)
系统应该会显示 Nginx 的软件版本。
第四步:控制 Nginx 服务
Nginx 的行为可以调整。使用它来启动或停止 Nginx,或者在启动时启用或禁用 Nginx。
首先检查 Nginx 服务的状态:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo systemctl status nginx
如果状态显示 active (running)
,则 Nginx 已经启动。按CTRL
+z
退出状态显示。
如果 Nginx 未运行,请使用以下命令启动 Nginx 服务:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo systemctl start nginx
要设置 Nginx 在系统启动时加载,请输入以下内容:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo systemctl enable nginx
Synchronizing state of nginx.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable nginx
要停止 Nginx 服务,请输入以下内容:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo systemctl stop nginx
为了防止 Nginx 在系统启动时加载:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo systemctl disable nginx
Synchronizing state of nginx.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install disable nginx
Removed /etc/systemd/system/multi-user.target.wants/nginx.service.
重新加载 Nginx 服务(用于应用配置更改):
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo systemctl reload nginx
对于 Nginx 的硬重启:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo systemctl restart nginx
第 5 步:允许 Nginx 流量
Nginx 需要通过系统的防火墙访问。为此,Nginx 为 Ubuntu 默认的ufw(简单防火墙)安装了一组配置文件。
首先显示可用的 Nginx 配置文件:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo ufw app list
系统应显示以下内容:
注意:可能会列出其他应用程序。它们可以被忽略。
要通过默认的 Ubuntu 防火墙授予 Nginx 访问权限,请输入以下内容:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo ufw allow 'nginx http'
防火墙规则已更新
规则已更新(v6)
系统应显示规则已更新
.
通过输入以下内容刷新防火墙设置:
sudo ufw reload
对于加密 (https) 流量,请输入:
sudo ufw allow 'nginx https'
要允许两者,请输入:
注意:建议您只允许最低要求的流量通过防火墙。对于这个过程,只需要基本的 HTTP 流量。其他配置可能需要 HTTPS(加密)或其他流量。如果系统使用不同的防火墙,则应将其配置为允许端口 80 (HTTP)、端口 443 (HTTPS) 或网络所需的任何端口上的流量。
第 6 步:测试 Nginx
确保 Nginx 服务正在运行,如步骤 4 所示。打开 Web 浏览器,并导航到以下 Web 地址,系统应该显示 Nginx 欢迎页面。
注意:如果系统具有特定的主机名或 IP 地址,则可以使用它。
如果系统没有图形界面,可以在终端使用 curl加载 Nginx 欢迎页面:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ curl –i www.linuxmi.com
系统应该显示 Nginx 欢迎页面的 HTML 代码。
第 7 步:配置服务器块
在 Nginx 中,服务器块是作为自己的服务器工作的配置。默认情况下,Nginx 预先配置了一个服务器块。
它位于/var/www/html。但是,它可以为不同的站点配置多个服务器块。
注意:本教程使用www.linuxmi.com作为域名。这可以替换为您自己的域名。
1.为测试域名创建目录
在终端窗口中,通过输入以下内容创建一个新目录:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo mkdir -p /var/www/www.linuxmi.com/html
2.配置所有权和权限
用于chmod
配置所有权和权限规则:
3. 为服务器块创建一个 index.html 文件
在您选择的文本编辑器中打开 index.html 进行编辑(我们将使用 Nano 文本编辑器):
sudo nano /var/www/www.linuxmi.com/html/index.html
在文本编辑器中,输入以下 HTML 代码:
<html>
<head>
<meta charset="UTF-8">
<title>欢迎来到 Linux迷 www.linuxmi.com</title>
</head>
<body>
<h1>这条消息确认你的 Nginx 服务器块正在工作。伟大的工作!</h1>
<div>
<img src="https://www.linuxmi.com/wp-content/uploads/2020/02/linuxmi.png" alt=Linux迷" width="666" height="666" />
</div>
</body>
</html>
按CTRL
+o
写入更改,然后 按CTRL
+x
退出。
4.创建 Nginx 服务器块配置
打开配置文件进行编辑:
sudo nano /etc/nginx/sites-available/www.linuxmi.com.conf
输入以下代码:
5. 为 Nginx 创建符号链接以在启动时读取
通过输入以下内容在服务器块和启动目录之间创建符号链接:
sudo ln -s /etc/nginx/sites-available/www.linuxmi.com.conf /etc/nginx/sites-enabled
6.重启Nginx服务
通过运行以下命令重新启动 Nginx :
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo systemctl restart nginx
7. 测试配置
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
系统应报告配置文件语法正常,并且配置文件测试成功。
8.修改Hosts文件(可选)
如果您使用的是未注册或未公开的测试域名,则 可能需要修改/etc/hosts文件以显示test_domain.com页面。
使用以下命令显示系统的 IP 地址:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
⚡ hostname -i
127.0.1.1
记下显示的 IP 地址。
接下来,打开/etc/hosts 进行编辑:
sudo nano /etc/hosts
在 localhost 信息正下方的空白处,添加以下行:
127.0.1.1 www.linuxmi.com linuxmi.com
将 127.0.0.1 替换为上面显示的 IP 地址。按CTRL
+o
保存更改,然后 按CTRL
+x
退出。
9. 在 Web 浏览器中检查 www.linuxmi.com
打开浏览器窗口并导航到 www.linuxmi.com(或你在 Nginx 中配置的域名)。
你此时应该会看到你在第 3 部分中输入的消息。
重要的 Nginx 文件位置
默认情况下,Nginx 将不同的配置和日志文件存储在以下位置:
- /var/www/html – 访问者看到的网站内容。
- /etc/nginx – 主要 Nginx 应用程序文件的位置。
- /etc/nginx/nginx.conf – 主要的 Nginx 配置文件。
- /etc/nginx/sites-available – 通过 Nginx 配置的所有网站的列表。
- /etc/nginx/sites-enabled – Nginx 正在服务的网站列表。
- /var/log/nginx/access.log – 访问日志跟踪对服务器的每个请求。
- /var/log/ngins/error.log – Nginx 中生成的任何错误的日志。
总结
你现在应该在 Ubuntu 20.04/22.04 上安装了 Nginx。而且您现在也应该了解如何设置 Nginx 服务器块。
The post 如何在 Ubuntu 20.04/22.04 上安装和配置 Nginx first appeared on Linux迷.
版权声明:
作者:zhangchen
链接:https://www.techfm.club/p/29631.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论