中文问答
Cloudflare 524 怎么修复
524 表示 Cloudflare 已连上源站,但源站响应时间过长。
排查顺序
- 先定位具体慢接口,不要只看首页。
- 对比“经 Cloudflare”与“源站直连”延迟差异。
- 检查主机资源与上游依赖(DB/API)是否到瓶颈。
如果你不确定是超时还是响应异常,可先看:Cloudflare 520 和 524 快速区分。
首轮命令
# 代理路径 vs 源站直连
time curl -s -o /dev/null -w '%{http_code}\n' https://yourdomain.com/your-heavy-endpoint
time curl -s -o /dev/null -w '%{http_code}\n' --resolve yourdomain.com:443:ORIGIN_IP https://yourdomain.com/your-heavy-endpoint
# 主机资源
top -bn1 | head -n 20
vmstat 1 5
iostat -xz 1 3
# 服务日志
sudo journalctl -u caddy --since '30 minutes ago' --no-pager | tail -n 120
sudo journalctl -u nginx --since '30 minutes ago' --no-pager | tail -n 120
如何判断根因
- 源站直连也慢:应用或数据库层瓶颈。
- 源站快、代理慢:边缘到源站链路或 TLS 路径问题。
- 仅个别接口超时:同步任务过重或查询爆炸。
低风险修复顺序
- 先缩短请求链路内工作量(慢 SQL、分页、缓存)。
- 将长任务改为异步队列处理。
- 对高重复读取页面配置合理缓存。
- 固定同一接口持续复测 30-60 分钟后再扩大改动。
修复成功信号
目标接口状态码应以 200/301/304 为主,且核心公开页面不再持续出现 524。
如果表现是“连接被拒绝”而不是“响应超时”,继续看:Cloudflare 521 怎么修复。