已编辑 5 几个月前 通过 ExtremeHow 编辑团队
翻译更新 5 几个月前
本指南的目的是帮助您在 Fedora 系统上安装和配置 Nginx。Nginx 是一个流行的开源 Web 服务器,以其高性能、稳定性和低资源消耗而闻名。它能够处理大量的并发连接,使其成为许多开发人员的首选。完成本指南后,您应该拥有一个可用于提供 Web 内容的 Nginx 安装。
在开始安装之前,请确保您的系统已更新至最新版本。更新确保您获得所有软件包(包括 Nginx)的最新功能和安全修复。
要更新您的系统,请打开终端并运行以下命令:
sudo dnf update -y
-y
标志在更新过程中自动回答“是”。更新完成后,继续安装 Nginx。
Fedora 的包管理器 DNF 可用于从其存储库安装 Nginx。安装过程很简单。
在终端中输入以下命令:
sudo dnf install nginx -y
此命令告诉 DNF 安装存储库中可用的最新版本的 Nginx。如果出现提示,请输入您的密码以授权安装过程。完成后,Nginx 已安装在您的系统上,但尚未启动。
安装后,您将需要启动 Nginx 服务,并确保其在启动时自动运行。
使用以下命令启动 Nginx:
sudo systemctl start nginx
要在启动时启动 Nginx,请使用:
sudo systemctl enable nginx
要验证 Nginx 是否正在运行,请执行:
sudo systemctl status nginx
如果一切设置正确,状态命令将显示 Nginx 处于活动状态并正在运行。
Nginx 的配置通过其配置文件实现,主要位于 /etc/nginx/nginx.conf
。此文件定义了主要设置,包括用户权限、错误日志和工作连接。
nginx.conf
文件包含几个指令,这些指令组织到上下文中,如 main {}
、events {}
和 http {}
在 http
上下文中,您可以拥有定义服务器特定配置的 server
块。
基本的服务器块可能如下所示:
server { listen 80; server_name example.com; location / { root /usr/share/nginx/html; index index.html index.htm; } }
此块告诉 Nginx 监听端口 80 的针对“example.com”的请求。root
指令指定存储 HTML 文件的位置,而 index
指令列出要提供的默认文件。
Nginx 支持使用虚拟主机的概念托管多个网站。每个站点由配置文件中的 server
块定义。
这是同一服务器上两个虚拟主机的示例:
server { listen 80; server_name site1.com; location / { root /var/www/site1; index index.html; } } server { listen 80; server_name site2.com; location / { root /var/www/site2; index index.html; } }
每个 server_name
指代一个不同的网站。对“site1.com”或“site2.com”的请求将根据它们各自的 root
目录提供不同的内容。
在编辑配置文件后,有必要在部署它们之前测试它们是否存在语法错误。您可以轻松完成此操作:
sudo nginx -t
如果没有报告错误,请继续重新加载 Nginx 服务以应用新配置:
sudo systemctl reload nginx
确保您的防火墙设置允许 HTTP 和 HTTPS 流量,以便 Nginx 可以提供网页。使用以下 firewall-cmd 命令允许这些服务:
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
使用 SSL 证书保护 Nginx 通过加密您的服务器和客户端之间传输的数据提供了一层安全保护。您可以使用 Let's Encrypt 的免费 SSL 证书。
首先,安装 Let's Encrypt 的 Certbot 工具:
sudo dnf install certbot python3-certbot-nginx -y
使用 Certbot 获取证书:
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
按照屏幕上的说明完成设置并安装有效的 SSL 证书。Certbot 将自动配置您的 Nginx 服务器块以使用 SSL。
Nginx 日志对于监控流量和故障排除问题非常重要。访问日志记录客户端请求,而错误日志存储 Nginx 服务器错误。
默认情况下,这些日志位于 /var/log/nginx/
目录中:
访问日志:/var/log/nginx/access.log 错误日志:/var/log/nginx/error.log
使用类似 tail -f /var/log/nginx/access.log
的命令检查这些日志,以实时查看传入的请求。
Nginx 是 Fedora 的一个多功能且强大的 Web 服务器解决方案,能够同时托管多个站点并为大量客户端提供服务。通过了解其配置和基本操作,您可以有效地利用 Nginx 来满足您的 Web 服务器需求。
如果你发现文章内容有误, 您可以