发布脚本调刷新目录的接口返回成功,半小时后打开首页,HTML 里引用的还是上一版 chunk 名,点进去 404。日志里能对上时间点,这种反而好排。
不少 CDN 的目录刷新只清子路径,根路径的 index.html 不在范围内,得单独按 URL 提交。接口返回成功只代表任务收下了,没等回源完成就放流量,看到的还是旧文件。这一点先确认清楚,后面就不用反复试。
curl -X POST 'https://cdn.api/purge' \
-d '{"urls":["https://example.com/","https://example.com/index.html"]}'
「CDN 刷新目录」确认了原因之后,改动尽量只碰那一处,顺手改的东西后面最容易出问题。偶发问题先统计频率,一小时几次和一天一次,查法完全不同。
改完顺手把文档补一句,省得下次自己重新推一遍。监控和日志的时间要对上,时区不一致会多绕很大一圈。
处理上按这个顺序:首页和几个入口 HTML 逐个按 URL 提交刷新,别只刷目录;刷新返回的任务 id 要查一次状态,确认完成再继续;发布流程里给入口地址带版本查询串,缓存键自然就变了。
结果对不对很好判断,curl 首页看到新的 chunk 名,任务状态查询显示已完成。
