排查 HTTP 503 错误响应。
当你的源站 Web 服务器过载时,会发生 HTTP 错误 503。
根据错误消息或错误位置,可以识别不同的原因:
- 错误的 HTML 响应正文中不包含
cloudflare或cloudflare-nginx。在这种情况下,问题可能来自你的源站服务器。 - 错误的 HTML 响应正文中包含
cloudflare或cloudflare-nginx。在这种情况下,问题可能来自 Cloudflare。 - 错误仅在日志或分析中可见。
要解决 503 错误,首先确定问题来自你的源站 Web 服务器还是 Cloudflare。以下部分提供了排查这两种情况的指导。
如果错误的 HTML 响应正文中不包含 cloudflare 或 cloudflare-nginx,请联系你的托管服务提供商,确认他们是否对发往源站 Web 服务器的请求进行限速。
如果错误的 HTML 响应正文中包含 cloudflare 或 cloudflare-nginx,则在 Cloudflare 数据中心发生了连接问题。请向 Cloudflare 支持 提供以下信息:
- 你的域名
503错误发生的时间和时区- 观察到
503错误的浏览器中www.example.com/cdn-cgi/trace的输出(将www.example.com替换为你的实际域名和主机名)
这些错误来自 Speed Brain 的不成功预取,可以忽略。网站访问者看不到这些错误。如有需要,可以为 zone 禁用 Speed Brain(此功能无法针对特定路径禁用)。
使用 Cloudflare Workers 时也可能出现错误 503:
如果你使用 Workers,请在 Workers 仪表板中检查错误日志和资源限制问题。
使用错误页面内容确定 503 是由 Cloudflare 还是你的源站服务器生成的:
| 信号 | 解释 |
|---|---|
错误页面 HTML 包含 cloudflare 或 cloudflare-nginx |
由 Cloudflare 生成 — 请参阅含有 cloudflare 或 cloudflare-nginx 的 503 错误 |
错误页面 HTML 不包含 cloudflare 或 cloudflare-nginx |
你的源站直接生成了 503 |
Cloudflare 生成的 503 表示 Cloudflare 数据中心存在连接问题。请参阅含有 cloudflare 或 cloudflare-nginx 的 503 错误了解后续步骤,并检查 Security > Events 是否有活动的缓解事件。
如果你的源站生成了 503,请检查源站服务器日志中是否有过载迹象:CPU/内存饱和、连接池耗尽,或应用程序级别的维护模式。