修复死链接后,验证响应不能只看“原来的404现在返回200”。正确的做法是把验证拆成三层:单条URL的HTTP响应、页面内容是否与原目标一致、以及站内引用是否已经同步更新。只有三层都通过,才算真正修复;否则你只是把一个报错换成了一个内容不对或跳转链过长的页面。
这是死链接检测修复环节里最普遍的误判。HTTP状态码只说明服务器对这次请求的应答类别,不说明这个应答是不是你要的东西。以下几种情况都会让状态码看起来“正常”,但问题依然存在:
noindex,等于告诉搜索引擎不要收录这个替代页。原因在于:死链接检测工具通常只报告状态码和跳转目标,它无法判断内容是否等价。修复动作(改配置、加重定向、补页面)和验证动作必须分开做,不能把工具重新跑一遍没有404就当作验收通过。
对每条被修复的URL,用命令行或浏览器开发者工具查看完整响应头,重点看四项:
可以用一条命令连续观察跳转链,例如:
curl -sIL "https://example.com/old-page" | grep -Ei "HTTP/|location:"
输出里如果出现两个以上HTTP/行,说明存在多级跳转,需要回到配置里把中间那一跳去掉。
状态码通过之后,判断内容是否等价。这里没有工具能替你下结论,只能人工比对,判断依据是:
适用条件是:原链接有明确主题、且站内存在内容相近的页面。如果站内确实没有对应内容,正确做法是保留404/410,或者新建一个真正覆盖该主题的页面,而不是把用户丢到首页。把大量不相关旧链接统一重定向到首页,属于典型的“软404式修复”,用户和搜索引擎都会判定为低质量。
死链接检测发现的入口往往不止一个:导航、正文内链、站点地图、外部链接都可能指向旧地址。修复了服务器重定向,但站内还留着旧URL,等于让每次点击都多走一次跳转。
检查项:
robots.txt禁止抓取,注意抓取限制不等于索引移除,被禁止抓取的URL仍可能出现在搜索结果里。要移除索引,应让页面返回404/410或使用noindex,并分别到各搜索引擎的站长平台核查实际状态。把下面几项做成一次验收流程,每条修复过的URL都过一遍:
noindex。下一步:从你最近修复的链接里挑出状态码为301的那几条,用上面的命令跑一遍跳转链,把出现两次以上跳转的规则先精简掉,再处理内容不匹配的落地页。