- 工信部备案号 滇ICP备05000110号-1
- 滇公网安备53011102001527号
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
- CN域名投诉举报处理平台:电话:010-58813000、邮箱:service@cnnic.cn
欢迎来到8455线路检测中心技术小课堂,每天分享一个技术小知识。
反向代理的本质:客户端访问 Nginx(代理服务器)的 80 端口 → Nginx 把请求转发到后端服务(比如跑在 8080 端口的 Web 服务)→ 后端处理请求后把结果返回给 Nginx → Nginx 再把结果返回给客户端。所以第一步必须先搭一个 “可访问的后端服务”,否则 Nginx 代理的是 “空地址”,测试会失败。
# 1. 确保Nginx已安装且运行(之前已装,验证一下) systemctl status nginx # 显示 active (running) 即正常 # 2. 确保80、8080端口未被占用(后端用8080,代理用80) netstat -tulpn | grep -E "80|8080" # 若8080被占用,执行 kill -9 进程ID 杀掉,或换后端端口(比如8081) # 3. 防火墙放行80、8080端口(客户端访问80,Nginx访问后端8080) firewall-cmd --add-port=80/tcp --permanent firewall-cmd --add-port=8080/tcp --permanentfirewall-cmd --reload

CentOS 默认带 Python,用它快速搭后端服务,零成本、易操作:
# 检查Python是否安装(几乎都有) python3 --version 或 python --version(显示版本即正常)
# 1. 创建后端服务目录(和Nginx代理目录区分开) mkdir -p /var/www/backend # 2. 创建后端测试页面(访问时能看到“后端服务响应”) echo ">这是后端服务(8080端口)的响应内容>" > /var/www/backend/index.html


用 Python 启动一个简易 Web 服务,作为反向代理的后端,命令如下:
# 后台启动后端服务,监听8080端口,根目录指向/var/www/backend nohup python3 -m http.server 8080 --directory /var/www/backend & # 解释:# nohup:让服务后台运行,关闭终端也不停止# python3 -m http.server 8080:启动Web服务,监听8080端口 # --directory:指定后端服务的根目录(放测试页面的地方) # &:后台运行

# 本地访问后端8080端口,能看到测试页面内容即正常 curl # 预期输出:1>这是后端服务(8080端口)的响应内容1>

vi /etc/nginx/conf.d/proxy.conf
server {listen 80;
# Nginx代理的入口端口
server_name 你的服务器IP; # 比如 192.168.1.100(填真实IP)
location / {proxy_pass http://www.landui.com:8080; # 转发到后端8080端口(本地后端填127.0.0.1)
proxy_set_header Host $host; # 传递客户端请求的主机名
proxy_set_header X-Real-IP $remote_addr; # 传递客户端真实IP给后端
}
}
# 按Esc → 输入:wq 保存退出 # 验证配置语法(关键,避免报错)nginx -t # 输出“test is successful”即正常 # 重启Nginx生效systemctl restart nginx

curl http://你的服务器IP # 比如 curl # 预期输出:>这是后端服务(8080端口)的响应内容> # 说明:你访问的是Nginx的80端口,但返回的是后端8080端口的内容,代理成功!
打开浏览器,输入 http://你的服务器IP(比如 http://www.landui.com),能看到 “这是后端服务(8080 端口)的响应内容”,即反向代理配置成功。

后端服务必须一直运行:如果关闭 Python 后端服务,代理会报错 502,可执行 ps -ef | grep python 查看后端进程,若没了重新启动即可;
端口不要冲突:确保 80(Nginx)、8080(后端)端口未被其他服务占用;
配置里的 IP 要填对:
后端服务跑在本机,proxy_pass 填 http://www.landui.com:8080;
后端服务跑在另一台服务器,填另一台的 IP(比如 http://www.landui.com:8080);
权限问题:Nginx 无需访问后端目录,只需能网络访问后端端口即可,所以不用给 Nginx 授权后端目录。
反向代理实操核心:先搭可访问的后端服务(8080 端口),再配置 Nginx 转发 80 端口请求到后端;
验证步骤:先测后端自身可用,再测 Nginx 代理访问,两步都通才是真的成功;
关键配置:proxy_pass 指向后端地址,proxy_set_header 传递客户端真实 IP / 主机名。
8455线路检测中心官网上拥有完善的技术支持库可供参考,大家可自行查阅,更多技术问题,可以直接咨询。同时,8455线路检测中心整理了运维必备的工具包免费分享给大家使用,需要的朋友可以直接咨询。更多技术知识,8455线路检测中心期待与你一起探索。
售前咨询
售后咨询
备案咨询
二维码

TOP