最小修复试验的核心做法是:先只选一组可独立验证的死链,用最小改动处理,再观察它们是否从“不可访问”变成“可访问且被正确跳转”。不要一次改全站,否则无法判断哪一步起了作用。适用条件是:你已经有一份死链清单,并且能区分“返回404”“返回301/302后仍失败”“被robots.txt阻止抓取”这三种情况。
修复目标不同,试验安排也不同。常见目标有三类:
如果只把404页面做得更漂亮,并没有修复死链,只是改善了错误页体验。判断时要看HTTP状态码和跳转终点,不能只看浏览器里有没有出现内容。
从死链清单里挑5到10条,覆盖不同来源:
样本要满足两个条件:数量少到可以逐条核对;类型足够不同,能暴露跳转规则是否覆盖。假设你有一个旧栏目页 /old-guide/ 已删除,站内还有三篇文章指向它,那么这三条链接就是一组可测试样本。这里不保证任何搜索引擎会立刻重新抓取或更新索引,只验证链接本身的行为。
按下面步骤做一轮试验:
curl -I https://example.com/old-guide/,看第一行返回的是404、301还是200。判断结果时,如果样本全部达到你定义的目标,再扩大范围;如果只有部分成功,先找出失败样本的共同点,例如是否都带参数、是否都指向同一目录,再决定下一轮改动。
不同修复方式付出的成本不同:
选择时先问:这个旧地址还有没有等价的新地址?有,就优先考虑301;没有,就判断内容是否值得恢复;都不成立,再删除站内入口。robots.txt 的抓取限制不等于可靠的索引移除,所以不要用屏蔽抓取来代替死链处理。站点地图也不保证收录,它只能帮助发现URL,不能修复链接本身。
一轮最小试验结束后,你应该得到三样东西:一份样本链接的前后状态对照、一种被验证有效的处理方式、以及失败样本的原因分类。下一步不是立刻全站批量替换,而是把有效规则应用到同类死链上,并保留回滚方式。如果样本里出现跳转终点错误或循环跳转,先修规则,再扩大范围。