首页/网络/协议速查/599 网络连接超时(非标准)
HTTP 方法与状态码91 条

599 网络连接超时(非标准)

非标准状态码,部分代理/CDN 用它表示「连接上游超时」;不在 IANA 注册表中,含义随实现而异。

协议速查网络更新于 2026-10-13

599 是什么

599 不在 IANA 的 HTTP 状态码注册表里,是部分代理与 CDN 自行约定的状态码,常见含义是「与上游建立连接超时」。因为不在标准内,各产品对 5xx 非标区间的定义各不相同——Cloudflare 就在 520 到 527 等编号上定义了自己的语义——对接时必须看对方文档。

基本信息

名称599(非标准)
类别非标 5xx
规范依据无 RFC,由具体实现自定义
常见含义代理或网关连接上游超时
风险客户端可能识别为未知码
归类原则仍属 5xx,表示服务器侧问题

典型使用场景

  • 排查上游超时:网关日志里的 599 通常指向连接后端超时
  • 与第三方对接:先确认对方对非标 5xx 的具体定义
  • 监控口径:把非标 5xx 单独归类,避免与标准 5xx 混算
  • 客户端健壮性:未知 5xx 一律按服务器错误处理并退避重试
  • 网关调优:检查连接与读取超时参数是否过短
  • 故障演练:验证后端完全不可达时网关的返回行为是否可预期

以行为为准而非编号

以行为为准而非编号
# 以超时或连接失败的行为为准,而不是状态码本身
curl -sv --max-time 10 https://api.example.com/slow 2>&1 | tail -5

# 网关侧常见成因:连接后端超时,检查相关超时参数
grep -E 'proxy_(connect|read)_timeout' /etc/nginx/nginx.conf

常见的厂商自定义 5xx

编号常见含义备注
520未知错误Cloudflare 定义
521源站不可达Cloudflare 定义
522连接源站超时Cloudflare 定义
524源站响应超时Cloudflare 定义
599连接上游超时部分代理网关自行约定
不要把 599 写进客户端的固定分支逻辑:同一编号在别的厂商那里含义可能完全不同,换网关后会直接失效。
规范对非标状态码的处理思路是按类别归因:5xx 一律表示服务器侧问题,客户端对幂等请求可以安全重试。
网关连接上游超时通常涉及连接超时、读取超时与重试次数三类参数,调整前先确认后端的真实耗时分布。
把非标 5xx 与业务错误一起统计,会掩盖真实的上游可用性问题。
对接双方应约定「未知状态码」的兜底策略,而不是依赖某个具体编号的含义。

易错点

  • 依赖 599 做自动判断会在换 CDN 或换网关后立刻失效:判断依据应是超时行为与日志
  • 监控把非标 5xx 计入标准错误率,会掩盖真实的上游可用性问题
  • 客户端对未知 5xx 直接向用户报错而不做退避重试,会放大瞬时故障
  • 网关超时设置过短,会把慢但正常的上游响应误判为故障
  • 把 599 写进接口文档当作标准状态码,会让后续对接方误解语义

数据来源与参考

  • IANA HTTP Status Code Registry(无 599 注册)
  • Cloudflare 帮助中心:5xx 错误说明(示例)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌