Nginx 反向代理入门:一篇看懂 proxy_pass

举报
yd_266952352 发表于 2026/11/07 03:04:00 2026/11/07
【摘要】 前后端分离部署、多服务共用域名、HTTPS 卸载,背后都是 Nginx 反向代理。本文用最小可运行配置讲清 proxy_pass 的用法。

前后端分离部署、多服务共用一个域名、HTTPS 证书统一卸载——这些需求的背后都是 Nginx 反向代理。本文用最小可运行配置讲清 proxy_pass 的核心用法。

一、最简反向代理

server 块里写 location /api/ { proxy_pass http://127.0.0.1:8080/; },访问 /api/list 会被转发到后端的 /list。注意结尾斜杠:proxy_pass 带斜杠会去掉 location 前缀,不带斜杠则原样拼接,这是最常见的踩坑点。

二、必须带上的三行头

proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;——第一行让后端拿到正确域名,后两行让后端拿到真实客户端 IP,否则日志里全是 127.0.0.1。

三、负载均衡一句话

upstream backend { server 10.0.0.1:8080; server 10.0.0.2:8080; } 然后 proxy_pass http://backend;,默认轮询。加 weight=2 调权重,加 backup 做备机。改完 nginx -t 检查语法、nginx -s reload 平滑生效,不会断连接。

排障三板斧:先看 error.log(路径通常在 /var/log/nginx/),再 curl -H "Host: 原域名" 直接打后端端口,对比两边响应定位是代理层还是服务层的问题。掌握这三段,八成的新项目部署场景都能覆盖。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。