跳至正文
中文
立即开始

502 Bad Gateway

502 Bad Gateway 是一种 HTTP 错误:网关或代理联系上游服务器后收到无效响应时,会返回此错误。

文章目录(8 个章节)

502 是什么意思

作为网关或代理的服务器联系上游服务器后,如果没有收到有效响应,就会返回 502。在大多数网站中,返回该错误的是位于源站服务器前端的反向代理、CDN 或负载均衡器。如果自行配置的代理服务器的上游路由出现故障,也可能返回此错误。

HTTP/1.1 502 Bad Gateway

客户端已经连接到网关,因此这与本地 DNS 解析或连接失败不同。Server 和 Via 等响应头可能表明错误来自哪一层。

常见原因

  • 上游关闭了连接。 崩溃、重启或网络中断导致服务器未能返回完整的 HTTP 响应。
  • 响应格式错误。 网关收到的状态行、响应头或协议响应无效。
  • 路由或 TLS 失败。 网关通常会将上游 DNS、路由或证书问题映射为 502 错误。
  • 源站过载。 源站接受了连接,但在返回有效响应之前发生故障。

如何解决

  1. 确定错误返回方。 查看响应正文和响应头,确认其中是否显示 CDN、网关或正向代理的名称。
  2. 对比直连请求和代理请求。 如果直连请求成功,而代理请求失败,问题很可能出在代理路径上。如果两者都失败,则更可能是网站本身的问题。
  3. 谨慎重试安全请求。 对 GET 或 HEAD 请求使用指数退避。不要自动重试可能导致重复操作的 POST 请求。
  4. 降低并发。 如果集中发送请求时出现错误,请减少并行请求数,并遵守网站的限制。
  5. 检查上游系统。 网站运营方应检查源站日志、健康检查、DNS 记录、TLS 设置和负载均衡器配置。

502、503 与 504 的区别

状态码 返回方 含义
502 Bad Gateway 网关或代理 上游响应无效
503 Service Unavailable 网站或网关 暂时无法处理请求
504 Gateway Timeout 网关或代理 上游未及时响应

常见问题

502 错误是我的代理导致的吗?

有可能。如果该网址可以直连访问,但通过代理时返回 502,问题很可能出在代理或其上游路由上。如果两种请求都失败,则更可能是网站的网关或源站导致的。

502 是否表示网站封禁了我的 IP?

通常不是。IP 遭到封禁时,更常见的是 403 或 429 响应。有些系统使用非标准状态码,因此应从允许访问的连接发送同一请求进行对比,再作判断。

是否应该重试 502 错误?

可以,但对于 GET 等安全请求,也只应间隔一段时间重试几次。除非应用支持幂等键,否则不要反复重试 POST 请求。

相关术语

查看全部术语