必须完成Nginx安装、基础配置及反向代理设定:一、启用EPEL源并安装Nginx;二、启动服务并设开机自启;三、防火墙放行80/443端口;四、修改nginx.conf添加proxy_pass转发规则;五、语法测试通过后重载服务。

如果您需要在CentOS 7系统上部署Web服务并实现外部流量的统一接入与分发,则必须完成Nginx的安装、基础配置及反向代理规则设定。以下是具体实施步骤:
一、安装Nginx依赖并启用EPEL仓库
CentOS 7默认源中不包含Nginx最新稳定版,需先启用EPEL扩展软件源,并安装编译与运行所需的基础依赖库。此步骤确保后续安装过程无缺失包报错。
1、执行命令安装EPEL仓库:sudo yum install epel-release -y
2、更新YUM缓存以识别新仓库:sudo yum update -y
3、安装Nginx主程序包:sudo yum install nginx -y
二、启动并设置Nginx开机自启
安装完成后需立即验证服务可运行性,并配置系统级自动启动策略,避免服务器重启后服务中断。
1、启动Nginx服务:sudo systemctl start nginx
2、设置开机自启动:sudo systemctl enable nginx
3、检查服务当前状态是否为active(running):sudo systemctl status nginx
三、配置防火墙放行HTTP与HTTPS端口
CentOS 7默认启用firewalld防火墙,若未开放80和443端口,外部请求将被直接拦截,导致网站无法访问。
1、永久允许HTTP流量:sudo firewall-cmd --permanent --add-service=http
2、永久允许HTTPS流量:sudo firewall-cmd --permanent --add-service=https
3、重载防火墙配置使规则生效:sudo firewall-cmd --reload
四、修改Nginx主配置文件启用反向代理
默认Nginx配置仅提供静态文件服务,需编辑主配置文件,在server块中添加proxy_pass指令,将客户端请求转发至后端应用服务器(如运行在localhost:8080的Java服务或Python Flask应用)。
1、备份原始配置:sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
2、编辑主配置文件:sudo vi /etc/nginx/nginx.conf
3、在http块内新增server段,包含以下关键指令:location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }
五、测试Nginx配置语法并重载服务
配置修改后必须验证语法正确性,否则重载会导致服务中断;仅当测试通过方可通知Nginx加载新规则。
1、检查配置文件语法是否合法:sudo nginx -t
2、若输出显示“syntax is ok”且“test is successful”,则执行重载:sudo systemctl reload nginx
3、使用curl本地访问验证代理是否生效:curl -I http://localhost



















