> 技术文档 > CentOS下Nginx服务器搭建全攻略_centos安装nginx

CentOS下Nginx服务器搭建全攻略_centos安装nginx


Nginx 安装与配置完整指南

一、安装 Nginx

1.1 添加 Nginx 官方仓库

在 CentOS 系统中,默认仓库的 Nginx 版本可能较旧(通常为 1.12 或更早版本),建议添加官方仓库来安装最新稳定版本(目前为 1.25.x):

sudo tee /etc/yum.repos.d/nginx.repo <<EOF[nginx]name=nginx repobaseurl=http://nginx.org/packages/centos/\\$releasever/\\$basearch/gpgcheck=0enabled=1EOF

此命令会创建 /etc/yum.repos.d/nginx.repo 文件,配置 Nginx 官方 YUM 仓库。其中:

  • baseurl 会根据 CentOS 版本自动匹配(例如 CentOS 7 对应 7/$basearch/,CentOS 8 对应 8/$basearch/)
  • gpgcheck=0 表示不进行 GPG 验证(生产环境建议设为1并导入密钥:sudo rpm --import http://nginx.org/keys/nginx_signing.key
  • enabled=1 表示启用该仓库

1.2 安装 Nginx 软件包

sudo yum install -y nginx

安装完成后,系统会自动创建以下重要文件和目录

  • 主程序/usr/sbin/nginx
  • 配置文件目录/etc/nginx/
    • 主配置文件:nginx.conf
    • 虚拟主机配置目录:conf.d/
    • 模块配置目录:modules-available/
  • 默认网站目录/usr/share/nginx/html
  • 日志目录/var/log/nginx/
    • 访问日志:access.log
    • 错误日志:error.log
  • 系统服务单元/usr/lib/systemd/system/nginx.service

1.3 启动服务并设置开机自启

# 启动Nginx服务sudo systemctl start nginx# 设置开机自动启动sudo systemctl enable nginx

验证服务状态:

sudo systemctl status nginx

正常输出应显示\"active (running)\"状态。常见状态说明:

  • active (running):服务正常运行
  • failed:启动失败(需检查日志)
  • inactive (dead):服务已停止

二、防火墙配置

2.1 开放基础端口

# 永久开放HTTP(80)和HTTPS(443)服务sudo firewall-cmd --permanent --add-service=httpsudo firewall-cmd --permanent --add-service=https# 重新加载防火墙规则sudo firewall-cmd --reload

对于云服务器(如AWS、阿里云等),还需在安全组中开放80和443端口:

  1. 登录云平台控制台
  2. 找到对应实例的安全组配置
  3. 添加入站规则:TCP 80和443,源地址0.0.0.0/0

2.2 可选端口管理

查看已开放端口和服务:

sudo firewall-cmd --list-all

输出示例:

public (active) target: default icmp-block-inversion: no interfaces: eth0 sources: services: dhcpv6-client http https ssh po