“`markdown
如何快速在 Linux 上安装 Nginx
Nginx(发音为 “engine-x”)是一个高性能的 HTTP 和反向代理服务器,同时也可以作为邮件代理服务器和通用 TCP/UDP 代理服务器。它以其卓越的性能、稳定性、丰富的功能集、简单的配置和低资源消耗而闻名,是许多高流量网站的首选。
本文将详细介绍如何在主流的 Linux 发行版(如 Ubuntu/Debian 和 CentOS/RHEL)上快速安装 Nginx。
前提条件
在开始之前,请确保您具备以下条件:
- 一台运行 Linux 操作系统的服务器(例如 Ubuntu、Debian、CentOS、RHEL、AlmaLinux 或 Rocky Linux)。
- 拥有
sudo权限的用户账户。 - 稳定的互联网连接。
1. 在 Debian/Ubuntu-based 系统上安装 Nginx
Debian 和 Ubuntu 使用 apt 包管理器,安装过程非常直接。
步骤 1:更新软件包索引
首先,更新您系统的软件包列表,以确保您获取到最新的 Nginx 版本信息。
bash
sudo apt update
步骤 2:安装 Nginx
执行以下命令安装 Nginx:
bash
sudo apt install nginx -y
-y 选项会自动确认所有安装提示。
步骤 3:调整防火墙 (UFW)
如果您的系统启用了 UFW (Uncomplicated Firewall),您需要允许 HTTP 和 HTTPS 流量通过。Nginx 在安装时会向 UFW 注册服务,简化了配置。
-
允许 HTTP 流量(端口 80):
bash
sudo ufw allow 'Nginx HTTP' -
如果您计划使用 SSL/TLS (HTTPS) 证书,请同时允许 HTTPS 流量(端口 443):
bash
sudo ufw allow 'Nginx HTTPS' -
如果 UFW 尚未启用,您可以启用它:
bash
sudo ufw enable -
检查防火墙状态以验证规则是否已应用:
bash
sudo ufw status
步骤 4:启动并启用 Nginx 服务
Nginx 通常在安装后会自动启动。您可以通过以下命令验证其状态,并确保它在系统启动时自动运行:
-
启动 Nginx:
bash
sudo systemctl start nginx -
在系统启动时启用 Nginx:
bash
sudo systemctl enable nginx -
检查 Nginx 服务的当前状态:
bash
sudo systemctl status nginx如果 Nginx 正在运行,您会看到
Active: active (running)的输出。
2. 在 CentOS/RHEL-based 系统上安装 Nginx
CentOS、RHEL、AlmaLinux 和 Rocky Linux 等系统使用 yum 或 dnf 包管理器。
步骤 1:安装 EPEL 仓库(如果需要)
在某些较旧的 CentOS/RHEL 版本(如 CentOS 7/RHEL 7 及更早版本)上,Nginx 可能不在默认仓库中。您需要安装 EPEL (Extra Packages for Enterprise Linux) 仓库。
对于 CentOS 7/RHEL 7:
bash
sudo yum install epel-release -y
对于较新的 RHEL 8/9、AlmaLinux、Rocky Linux,Nginx 通常已包含在默认仓库中,此步骤可以跳过。
步骤 2:安装 Nginx
根据您的系统版本,使用 yum 或 dnf 安装 Nginx:
-
对于 CentOS/RHEL 7:
bash
sudo yum install nginx -y -
对于 RHEL 8/9、AlmaLinux、Rocky Linux:
bash
sudo dnf install nginx -y
步骤 3:调整防火墙 (firewalld)
如果您的系统启用了 firewalld,您需要允许 HTTP 和 HTTPS 流量通过:
-
允许 HTTP 流量(端口 80):
bash
sudo firewall-cmd --permanent --zone=public --add-service=http -
如果您计划使用 SSL/TLS (HTTPS) 证书,请同时允许 HTTPS 流量(端口 443):
bash
sudo firewall-cmd --permanent --zone=public --add-service=https -
重新加载防火墙以应用更改:
bash
sudo firewall-cmd --reload
步骤 4:启动并启用 Nginx 服务
在 CentOS/RHEL 系统上,Nginx 在安装后通常不会自动启动。您需要手动启动并启用它:
-
启动 Nginx:
bash
sudo systemctl start nginx -
在系统启动时启用 Nginx:
bash
sudo systemctl enable nginx -
检查 Nginx 服务的当前状态:
bash
sudo systemctl status nginx如果 Nginx 正在运行,您会看到
Active: active (running)的输出。
3. 验证 Nginx 安装
无论是哪种 Linux 发行版,您都可以通过以下方式验证 Nginx 是否成功安装并运行:
- 打开网页浏览器:在浏览器中输入您的服务器 IP 地址或域名。
- 查看 Nginx 欢迎页面:如果一切正常,您将看到 Nginx 的默认欢迎页面(通常显示 “Welcome to nginx!” 或类似的文本)。
如果无法访问,请检查防火墙设置和 Nginx 服务状态。
4. 基本配置(可选)
Nginx 的主要配置文件位于:
- Debian/Ubuntu:
/etc/nginx/nginx.conf - CentOS/RHEL:
/etc/nginx/nginx.conf
网站的默认根目录通常是:
- Debian/Ubuntu:
/var/www/html - CentOS/RHEL:
/usr/share/nginx/html
在修改任何配置文件后,务必测试配置文件的语法是否正确,然后重新加载 Nginx 服务:
bash
sudo nginx -t
sudo systemctl reload nginx
总结
通过遵循上述步骤,您可以在几分钟内快速在您的 Linux 服务器上安装并运行 Nginx。Nginx 的强大功能和灵活性将为您的 Web 服务提供坚实的基础。接下来,您可以根据您的具体需求配置 Nginx,例如设置虚拟主机、反向代理或负载均衡。
“`