文章里的违规段落被删掉,源站打开是干净内容,CDN 域名下还是旧版本,两小时后仍能访问到被删的段落。乍看像缓存或者权限的锅,追下去往往不是。

curl -X POST https://cdn.example.com/api/purge -d '{"urls":["https://www.example.com/post/8821"]}'

追下去是这么回事:删除操作只更新了数据库,没有触发页面缓存和 CDN 刷新。页面 TTL 设在 12 小时,边缘不会主动回源。

「审核状态与缓存」这个问题文档写得含糊,实际行为以当前版本为准,别照旧版本的结论套。一次只改一处,改完立刻验证,几个改动叠在一起,出问题就说不清是谁导致的。

先做最小复现,能稳定跑出来的问题,排查成本会低一个数量级。别只看报错的最后一行,往上看几行,真正的起因通常在上面。

同类问题如果隔一段时间又出现,多半是某个定时任务或重启流程把改动冲掉了。

具体做法是,内容状态变更时同时刷新详情页和列表页地址;审核类操作把页面 TTL 临时降到 5 分钟;删除后立刻用 CDN 域名访问一次,确认不是旧版本。

验收就看一点,CDN 域名下打开的文章已不含被删段落。

作者 9823189