502 Bad Gateway
一句话:反向代理找不到后端服务、后端崩溃或端口配置错误时常见的网关错误。
它是什么
502 Bad Gateway通常表示Nginx、Caddy、网关或平台代理收到了请求,但从后端服务拿不到有效响应。它经常出现在服务器部署、Docker端口映射、后端启动失败、服务超时或WebSocket配置错误时。
适合干什么
- 用Nginx或Caddy代理后端的人
- Docker部署后页面显示502的人
- 后端服务本地正常但域名访问失败的人
- AI生成部署配置后需要排错的人
不适合干什么
- 浏览器显示404的路由问题
- 用户没有登录导致的401
- 权限不足导致的403
- 数据库查询错误但页面还能打开的业务问题
普通人怎么用
- 先确认后端服务是否正在运行
- 在服务器本机curl后端端口
- 检查反向代理转发地址和端口
- 查看Nginx、Caddy或平台日志
- 检查容器端口映射和服务监听地址
进阶用户怎么用
- 区分连接被拒绝、超时、上游提前关闭三类日志
- 检查后端是否监听0.0.0.0
- 增加代理超时配置
- 为后端配置健康检查和自动重启
常见误区
- 后端根本没启动却一直改Nginx
- 容器内部端口和宿主机端口混淆
- 后端只监听localhost导致代理访问不到
- 日志不看,只凭感觉重启服务器
和相似工具的区别
- 502 vs 504:502多是上游响应无效或连接失败,504多是网关等待上游超时。
- 502 vs 404:502是代理到后端链路失败,404是路径或资源不存在。
入门步骤
- 查后端进程
- curl本机端口
- 查代理配置
- 查容器端口
- 看错误日志
- 重启服务
- 设置健康检查
推荐工具(第三方)
Nginx、Caddy、Docker、curl、PM2、systemd