实验报告 / 006

Cloudflare Pages soft 404:不存在的 URL 为什么返回 200?

生产路由实验:复现缺失页面错误返回 200,部署精确白名单,再验证真实 404 响应。

结论:已修复所测生产路径;不宣称排名提升。

问题与答案

Cloudflare Pages 会不会对不存在的 URL 以 HTTP 200 返回首页?

会。10 月 9 日约 05:57 UTC,两个不存在的生产 URL 返回 200。部署 d1069a0 的路由白名单后,生产检查确认未知路径返回 404、已发布实验 005 返回 200。这是 soft 404 风险的证据,不代表 GSC 已判定为 soft 404。

观察数据

  • 200 — 修复前:缺失路径
  • 404 — 修复后:缺失路径
  • 7/7 — 路由测试通过
  • 15 — 修复时验证的 sitemap URL

复现与修复步骤

  1. 复现生产 HTTP 响应:修复前直接检查两个不存在的生产路径,均返回 200;更早的浏览器测试也曾显示完整首页。
  2. 限制 Pages SPA 回退:只允许三语首页、已发布实验、Feed 与静态资源;保留根路径语言跳转,其他路径返回 HTTP 404 和 X-Robots-Tag: noindex。
  3. 测试并验证部署结果:七项 Node 中间件测试通过,覆盖当时 sitemap 的全部 15 个 URL、跳转和发现资源;类型检查与构建通过。Cloudflare 部署 d1069a0 后,生产 HTTP 检查发现真实 404,而实验 005 仍为 200。

发现

首页能显示也可能掩盖错误 HTTP 状态

客户端渲染可能让不存在的路径看起来正常,但爬虫仍会读取服务器状态;不存在的内容不应返回成功。

Sitemap 和白名单必须同步

白名单解决回退问题,却可能误拦新文章;回归测试现已逐一检查 sitemap URL 能否通过中间件。

失败与限制

第一次修复覆盖范围太窄

只拦截未发布实验编号和已知探测路径,仍无法防止任意不存在路径回退到首页。

尚未测量收录或流量结果

Search Console 分类不可用。HTTP 正确性已验证,但收录、排名和自然搜索来源是否改善尚无数据。

证据与限制

修复前检查
2026-10-09 ~05:57 UTC
测试的缺失 URL
/en/this-is-an-unknown-route/ ; /xyzzy-unknown/
修复前 / 后
HTTP 200 → HTTP 404
生产修复提交
d1069a0
已发布报告对照
/en/experiments/exp-005/ : HTTP 200
回归测试
7/7 PASS; 15 sitemap URLs
Search Console 分类
Unavailable; no classification asserted

相关报告

EXP-005

返回实验列表