排障:Cloudflare 520–526 错误怎么定位
先保存错误码、时间、URL 与 CF-RAY,再按网络、TLS 和源站响应阶段定位 520 到 526。
编辑与核验:橙宝书编辑团队 ·
先不要乱改 DNS、SSL 和防火墙
同一个 5xx 页面可能对应完全不同的连接阶段。先保存错误码、发生时间与时区、完整 URL、CF-RAY 和复现频率,再做经过 Cloudflare 与直连源站的对照请求。
详细说明
- 01Capture
保存 code、time、URL 与 CF-RAY。
- 02Compare
对照代理路径与保留 Host/SNI 的直连源站请求。
- 03Locate
按网络、TLS 或 HTTP 响应阶段缩小范围。
- 04Change
一次只改一个可验证原因,并保留回退。
错误码速查
| 错误 | 发生阶段 | 常见方向 | 第一条证据 |
|---|---|---|---|
| 520 | 源站返回空、未知或不符合预期的响应 | 源应用崩溃、异常头、过大头、连接被提前关闭 | 源站与代理响应头、同一时刻源日志 |
| 521 | TCP 连接被源站拒绝 | 服务未监听、防火墙拒绝 Cloudflare IP | 源站端口监听与防火墙日志 |
| 522 | Cloudflare 连接源站或等待确认超时 | 丢包、过载、防火墙静默丢弃 | 网络与负载指标、源日志是否收到请求 |
| 523 | Cloudflare 无法到达源站 | DNS 源 IP 错、路由问题 | Cloudflare DNS 中的源 IP 与路由 |
| 524 | 已连接源站,但默认 125 秒内没有 HTTP 响应 | 慢查询、同步图片/PDF 处理、阻塞外部 API | 请求耗时、慢查询与任务时间线 |
| 525 | 与源站的 TLS 握手失败 | 协议、密码套件、SNI 或证书链问题 | 源站 TLS 测试与握手日志 |
| 526 | Full (strict) 下源站证书无效 | 过期、主机名不符、自签或证书链错误 | 证书主机名、期限、签发链 |
四步定位
保存可关联证据
curl -sS -D - -o /dev/null https://example.com/problem-path保存完整响应头和错误页中的 Ray ID;同时记录发生时间与时区、URL、HTTP 方法、是否登录、是否只影响某地域,以及最近一次部署或源站变更。不要把 Token、Cookie 或完整敏感请求体贴到公开工单。
保留 Host 与 SNI 直连源站
curl -sS -D - -o /dev/null \
--connect-to example.com:443:203.0.113.10:443 \
https://example.com/problem-path把示例 IP 换成已核对的源站 IP。若代理路径失败而直连成功,继续检查 Cloudflare 到源站的允许列表、TLS 与路由;两条都失败则优先查源站应用或基础设施。直连会绕过 Cloudflare 保护,只用于受控诊断。
按阶段只查一组原因
521–523:确认 DNS 源 IP、端口监听、Cloudflare IP allowlist、路由与源站负载。525–526:检查源站证书主机名、有效期、完整链、SNI 和支持的 TLS;不要长期把 Strict 降级当修复。520/524:关联应用日志、代理日志、慢查询与外部依赖。确认是否由 Worker 或其他组件提前生成了响应。
用同一请求验证最小修复
一次只调整一个目标。重复相同 URL、方法和身份条件,比较错误率、完整响应头和源站日志。只有证据链恢复,且没有放宽防火墙或 TLS 安全边界,才算修复完成。
AI 做的图片与 PDF 工具不要同步等 125 秒
上传后转换、批量图片处理、PDF 解析或大模型调用可能超过同步请求窗口。把长任务写入 Queue 或 Workflow,立即返回任务 ID,让前端轮询状态;不要单纯调高超时来掩盖没有边界的任务。
什么时候升级到更深诊断
当错误间歇出现且基础证据不足时,再收集源站资源曲线、负载均衡日志或最小时间窗的网络抓包。抓包可能包含 Cookie、Token 与请求体,必须限定时间、接口和访问权限,脱敏后再分享。
缓存响应异常不属于同一问题树,请转到 CF-Cache-Status 排障;请求经过哪些层见请求链路架构。
官方来源
这篇内容帮你完成目标了吗?
内测反馈只在当前浏览器生成,不会自动上传。