Blog · 2026-08-30

你的站可能正在白烧爬取预算:soft 404 与 Cloudflare Pages 的 SPA fallback 陷阱

坏网址一律回 200 加一整份首页,不是「反正有东西」,而是爬虫把抓取额度花在垃圾网址上——一个 404.html 就能修,修完还会看到一批原本看不见的问题。

新站收录一直上不去,你以为是内容不够好。其实还有一种可能:所有不存在的网址——失效的旧外连、打错字的内链、扫描器乱试的路径——你的站全部回 200,还奉上一整份首页。爬虫每天来,额度全花在这些垃圾请求上,真正该抓的页面反而排不进去。

病征:curl 一个不存在的路径,看它回什么

我们手上一个 60 多页的内容站,长期苦于爬取量不足。健检时 curl 了几个确定不存在的路径:/random-xyz/rss.xml/llms.txt,全部回 HTTP 200,body 是完整的首页 HTML,87KB,canonical 指向 /

这就是 soft 404:网址不存在,服务器却说「有」。它有两个阴险的特性:

成因很单纯:Cloudflare Pages 的建置产出根目录里没有 404.html 时,会自动退回 single-page application 模式,未命中的路径一律回 index.html 加 200。对真正的 SPA 这是功能;对多页静态站这是灾难,而且是无声的默认行为。

为什么这在烧爬取预算

「首页 canonical 指向 /,坏网址不会被收录成重复内容,不就没事?」

收录确实挡住了,爬取没有。canonical 写在 HTML 里,Googlebot 得先下载整份 87KB 首页才读得到它——每个坏网址都是一次完整下载。而坏网址的来源比想像中多:别人打错的外部连结、改版留下的旧路径、扫描器固定会踩的 /feed/.env 之类。

更糟的是,回 200 等于告诉搜寻引擎「这个网址活著」,它会留在排程里被反复重抓;真正的 404 则会被逐步降低重抓频率。Google 的爬取预算管理指南也把 soft 404 明列在浪费爬取资源的因素里。对大站这是杂讯;对一个爬取量本来就不足的站,这是把救命的额度倒进水沟。

修法:放一个 404.html,让平台退出 SPA 模式

修法便宜到不成比例:在建置产出根目录放一个真的 404.html,Cloudflare Pages 侦测到它就切回静态站模式,未命中路径改回真正的 HTTP 404。

我们把 404 页做进产生器而不是手写孤儿档:用站上同一套 CSS 与导览,放上主要页面的连结,让误入的真人有路可走。

实测结果:

验证要验三面:坏网址变 404、好网址没跟著坏、爬虫身分看到的跟你一样。只验第一项就收工,是在赌。

修好隔天,死连结现形

soft 404 修好的隔天,自己人点导览列就撞上 404。追查发现首页导览列有两条存在已久的死连结:一条指向从头到尾没做出来的页面;另一条多包了一层目录——正确路径是 /how-to-pick/,连结却写成 /guide/how-to-pick/

为什么从来没人发现?因为在 soft 404 时代,点下去回 200 和首页,看起来像「怪怪的但能用」。404 修好,这些连结第一次真的以 404 的样子出现在人眼前。根因也很典型:首页手工维护、内页导览由产生器生成,两边各自演化就走钟了。

所以别把修好 404 当结案——它是让旧问题现形的开始。接下来几天,预期会捞到一批原本隐形的坏连结。

把检查做成部署闸门,并先证明它会叫

人眼抓不到的问题,就不该继续靠人眼。我们在部署流程加了一道死连结闸门:扫描建置产出里每一条站内 href,只要指不到实际文件、又没有转址规则接住,就直接挡下这次部署。

关键在负面测试:故意把已知的死连结插回去,确认闸门真的会挡。没看过它挡下东西的闸门,只是让人安心的装饰。

同一轮全站扫描还捞出另一个肉眼看不见的问题:27 页的标题超过 30 个全形字(含首页的 33.5 字),而繁中搜寻结果页大约 28–30 字就截断,多出来的部分等于白写。逐页压进 30 字内——保留品牌与核心关键句、只砍后段赘语——改完超标归零。

结语

soft 404 难缠不在修——一个 404.html 就解决——而在它全程无症状:监控绿灯、点击有页面、连检查指令都会被骗。如果你的站挂在 Cloudflare Pages 或任何带 SPA fallback 的平台,现在就 curl 一个不存在的路径看它回什么;回 200,你就找到收录不动的其中一个原因了。修完记得把死连结扫描做成部署闸门,再用负面测试证明它会动。这类「看起来没坏所以没人修」的问题,我们处理过不少;想确认自己站上还藏著哪些,欢迎来找我们聊聊。

这类技术债,我们做成了服务

soft 404 这种问题不会让网站挂掉,只会让你的爬取预算安静地烧完,然后某天发现新页一直不被收录。

方案 费用 内容
建置 $900 USDT 站台架构、技术 SEO、初始内容
月维护 $400 USDT / 月 内容产出、内链维护、索引监控

规格在 iGaming SEO 建站服务

这类问题,我们天天在解

把你的情境描述给我们,直接告诉你做不做得到、大概多少钱。

用 Telegram 聊需求
评估与报价不收费 · 回复你的是工程师本人
TG 聊需求