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端口:
- 登录云平台控制台
- 找到对应实例的安全组配置
- 添加入站规则: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