liu error
问题的核心原因是Cloudflare Purge API认证失败,导致博客发布文章后无法清除缓存,进而导致新文章无法显示。解决方法是检查并重新配置Cloudflare Workers的环境变量,包括API Token权限、环境变量配置和变量名称验证。重新触发流程后,手动清理一次缓存并再次尝试发布或修改文章即可解决问题。
核心原因
截图中的错误信息是:
Cloudflare Purge API failed: {"code":10000, "message": "Authentication error"}
这意味着你的博客在尝试“清除缓存(invalidate caches)”时,API 认证失败了。
为什么会导致文章不显示?
1. 流程中断:这个 post-process-workflow 是发布文章后的自动化流程。它负责更新搜索索引、生成摘要和**清理缓存**。
2. 缓存没清理:因为最后一步“清理缓存”报错失败了,Cloudflare 的边缘节点依然缓存着你发布文章之前的旧页面。
3. 结果:数据库里其实已经有新文章了,但你访问博客时,Cloudflare 还在给你看旧的缓存,所以新文章显示不出来,或者有巨大的延迟。
解决方法
你需要检查并重新配置 Cloudflare Workers 的 环境变量 (Environment Variables)。请按照以下步骤操作:
1. 检查 API Token 权限
你创建的 Cloudflare API Token 权限可能不够,或者已经失效。
去 Cloudflare 控制台 -> 右上角 *My Profile (个人资料)** -> API Tokens。
* 确保你的 Token 至少拥有以下权限:
* Zone - Cache Purge - Edit (最重要的,负责清理缓存)
* Zone - Zone - Read (读取域名信息)
* Worker Scripts - Edit (可选,取决于项目需求)
* 建议:如果你不确定,可以创建一个拥有 "All zones - Cache Purge" 权限的 Token。
2. 检查环境变量配置
进入你的 Cloudflare 控制台,找到部署这个博客的 Workers 或 Pages 项目:
点击 Settings (设置) --> Variables (变量)。
检查以下变量的值是否正确:
CLOUDFLARE_API_TOKEN:填入你上面创建的 Token。
CLOUDFLARE_ZONE_ID:确保这是你域名的 Zone ID(在域名的 Overview 页面右侧可以找到)。
CLOUDFLARE_ACCOUNT_ID:你的账户 ID。
3. 验证环境变量名称
查看 du2333/flare-stack-blog 项目的文档或 wrangler.toml 文件,确认变量名是否严格匹配。
有些项目可能要求变量名为
CF_API_TOKEN或PURGE_API_TOKEN。请对照该项目的README检查。
4. 重新触发流程
配置好变量后:
1. 手动清理一次缓存:在域名管理界面 -> Caching -> Configuration -> Purge Everything。
2. 再次尝试发布或修改一篇文章,观察工作流是否全部变绿。
总结
你的 API Token 错了或者没权限。 只要把 API Token 搞定,让 invalidate caches-1 这一步运行成功(变绿),文章不显示的问题就会立刻解决。