CentOS Nginx 安装教程 – wiki大全

CentOS Nginx 安装教程

Nginx(发音为 “engine-x”)是一个免费、开源、高性能的 HTTP 服务器和反向代理服务器,也可以用作邮件代理服务器和通用 TCP/UDP 代理服务器。它以其高性能、稳定性、丰富的功能集、简单的配置以及低资源消耗而闻名。本教程将详细介绍如何在 CentOS 7 和 CentOS 8 系统上安装和配置 Nginx。

前提条件

在开始之前,请确保您具备以下条件:

  • 一台运行 CentOS 7 或 CentOS 8 的服务器。
  • 拥有 root 权限或具有 sudo 权限的用户账户。
  • 稳定的互联网连接。

CentOS 7 上安装 Nginx

CentOS 7 默认仓库中不包含 Nginx,因此我们需要添加 EPEL (Extra Packages for Enterprise Linux) 仓库。

步骤 1:更新系统包

在安装任何新软件之前,建议更新系统上的现有包,以确保所有软件包都是最新版本。

bash
sudo yum update -y

步骤 2:添加 EPEL 仓库

EPEL 仓库提供了许多企业版 Linux 不包含的额外软件包,其中就包括 Nginx。

bash
sudo yum install epel-release -y

步骤 3:安装 Nginx

EPEL 仓库添加完成后,您就可以使用 yum 命令安装 Nginx 了。

bash
sudo yum install nginx -y

步骤 4:配置防火墙

CentOS 7 默认使用 firewalld 作为防火墙。您需要配置防火墙以允许 HTTP (80 端口) 和 HTTPS (443 端口) 流量通过,以便外部用户可以访问您的 Nginx 服务器。

bash
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

要验证服务是否已成功添加,可以运行:

bash
sudo firewall-cmd --list-all

步骤 5:管理 Nginx 服务

安装完成后,您可以使用 systemctl 命令来管理 Nginx 服务。

  • 启动 Nginx 服务:
    bash
    sudo systemctl start nginx
  • 设置 Nginx 开机自启:
    bash
    sudo systemctl enable nginx
  • 检查 Nginx 状态:
    bash
    sudo systemctl status nginx
  • 停止 Nginx 服务:
    bash
    sudo systemctl stop nginx
  • 重启 Nginx 服务:
    bash
    sudo systemctl restart nginx
  • 重新加载 Nginx 配置(在修改配置文件后使用,无需停止服务):
    bash
    sudo systemctl reload nginx

CentOS 8 上安装 Nginx

CentOS 8 已经将 Nginx 包含在其默认仓库中,因此安装过程相对简单。

步骤 1:更新系统包

同样,首先更新您的系统包。

bash
sudo dnf update -y

步骤 2:安装 Nginx

在 CentOS 8 上,您可以使用 dnf 命令直接安装 Nginx。

bash
sudo dnf install nginx -y

步骤 3:配置防火墙

CentOS 8 也使用 firewalld。配置防火墙以允许 HTTP (80 端口) 和 HTTPS (443 端口) 流量。

bash
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

要验证服务是否已成功添加,可以运行:

bash
sudo firewall-cmd --list-all

步骤 4:管理 Nginx 服务

使用 systemctl 命令管理 Nginx 服务,与 CentOS 7 类似。

  • 启动 Nginx 服务:
    bash
    sudo systemctl start nginx
  • 设置 Nginx 开机自启:
    bash
    sudo systemctl enable nginx
  • 检查 Nginx 状态:
    bash
    sudo systemctl status nginx
  • 停止 Nginx 服务:
    bash
    sudo systemctl stop nginx
  • 重启 Nginx 服务:
    bash
    sudo systemctl restart nginx
  • 重新加载 Nginx 配置(在修改配置文件后使用,无需停止服务):
    bash
    sudo systemctl reload nginx

验证 Nginx 安装

无论您是在 CentOS 7 还是 CentOS 8 上安装 Nginx,都可以通过以下方式验证其是否正常运行:

  1. 检查服务状态:
    bash
    sudo systemctl status nginx

    如果 Nginx 正在运行,您会看到 “active (running)” 字样。

  2. 通过浏览器访问:
    在您的服务器上打开网页浏览器,或在本地计算机上访问您的服务器的 IP 地址或域名。例如,如果您服务器的 IP 地址是 192.168.1.100,则在浏览器中输入 http://192.168.1.100
    您应该会看到 Nginx 的默认欢迎页面,这表明 Nginx 已成功安装并正在运行。

    如果您不知道服务器的 IP 地址,可以使用以下命令查询:
    bash
    ip addr show

基本 Nginx 配置 (可选)

Nginx 的主配置文件位于 /etc/nginx/nginx.conf。您可以在 /etc/nginx/conf.d/ 目录下创建自己的配置文件(通常以 .conf 结尾)来定义虚拟主机(server blocks)。

一个简单的虚拟主机配置示例 (/etc/nginx/conf.d/your_site.conf):

“`nginx
server {
listen 80;
server_name your_domain.com www.your_domain.com; # 替换为您的域名或IP

root /usr/share/nginx/html; # 您的网站文件存放路径
index index.html index.htm;

location / {
    try_files $uri $uri/ =404;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
    root /usr/share/nginx/html;
}

}
“`

在修改配置文件后,请务必检查配置文件的语法是否正确,并重新加载 Nginx 服务:

bash
sudo nginx -t
sudo systemctl reload nginx

总结

通过遵循本教程的步骤,您应该已成功在您的 CentOS 7 或 CentOS 8 服务器上安装并启动了 Nginx。现在,您可以开始部署您的网站或使用 Nginx 作为反向代理来管理您的应用程序。

希望这篇文章能帮助您!

滚动至顶部