Nginx反向代理问题:502、超时和真实IP
2023年7月记录,分类「服务器运维」。这里不追求大而全,主要记录一个测试点从发现到落地的过程。
常见现象
Nginx 问题经常被简单归为 502,但背后可能是 upstream 不通、uWSGI 没启动、超时太短、真实 IP 传递错误。
整理时我特意把输入、动作、观察点和风险拆开,方便后面补用例。
链路检查
- 先从 Nginx error.log 判断是连接失败还是上游超时。
- 确认 upstream 地址、端口和容器 IP 是否变化。
- 检查 X-Forwarded-For、Host、超时和 body 大小限制。
nginx -t
tail -n 100 /var/log/nginx/error.log
curl -H 'Host: fanzhengblog.com' http://127.0.0.1/
配置关注
- Nginx reload 前配置测试通过。
- 真实客户端 IP 能传到 Django 日志。
- 大请求、慢请求、上游重启都有验证。
我一般会把这部分同步到缺陷模板里,让开发能直接看到复现材料和判断依据。
复盘
代理层问题要同时看配置和运行态,尤其是容器 IP 变化这种隐蔽点。真正有价值的不是这一次解决了什么,而是下次能不能更快定位同类问题。