如何快速在 Linux 安装 Nginx – wiki词典

“`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 等系统使用 yumdnf 包管理器。

步骤 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

根据您的系统版本,使用 yumdnf 安装 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 是否成功安装并运行:

  1. 打开网页浏览器:在浏览器中输入您的服务器 IP 地址或域名。
  2. 查看 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,例如设置虚拟主机、反向代理或负载均衡。
“`

滚动至顶部