修复死链接之后,后续监测的重点不是每天重新爬一遍全站,而是把“曾经出过问题的URL”和“站内新产生的引用”分开跟踪。常见误解是:只要把当前返回404的链接全部改掉,死链接问题就算结束。实际上,死链接会持续产生,来源包括页面被删除、URL规则调整、外部站点引用失效、站内旧文章仍指向已下线地址等。监测要解决的是尽早发现新增死链接,并确认已修复的链接没有再次失效。
第一类是站内死链接:你自己页面中指向站内或站外的链接返回404、410或其他错误状态。第二类是入站死链接:其他网站指向你的某个URL,而该URL已经不可访问。两者的监测方式不同。
如果只监测站内链接,你会漏掉外部引用带来的404;如果只依赖外部工具,站内新产生的错误链接又可能几天后才被发现。合理做法是两套并行,但频率不同。
已经修复过的死链接不应立刻从监测中移除。建议把以下URL放入观察名单,连续跟踪至少两到四个抓取周期:
观察名单的检查项很简单:当前HTTP状态码是什么;如果是301或302,跳转目标是否仍然返回200;跳转链是否超过一跳;返回200的页面内容是否与原来主题一致。若跳转目标变成另一个404,说明修复并未真正完成。
服务器访问日志能告诉你哪些URL被请求过、返回了什么状态码、来源页是什么。爬取工具能告诉你当前站内还有哪些链接指向错误地址。两者交叉后,才能判断一个死链接是“已经定位的原因”还是“可能原因”。
例如,日志显示某个URL返回404,来源页是站内旧文章,这属于已经定位的站内引用问题,可以直接修改来源页链接。若日志显示404来自外部来源,但你没有该外部页面的控制权,就只能考虑恢复原URL、设置301跳转,或联系对方更新链接。若爬取工具报告某页面链接404,但日志中没有该请求,可能是爬取工具使用了缓存或不同User-Agent,需要进一步核对。
监测频率按站点规模调整。内容更新少的小站,可以每两周检查一次站内链接,每月检查一次入站死链接。每天发布大量内容的站点,应至少每周检查一次站内链接,并对观察名单保持更高频率。没有统一标准,关键是让发现时间早于用户大量遇到错误页面的时间。
robots.txt用于限制抓取,不等于从索引中移除页面,也不能阻止用户点击死链接。站点地图用于提交可抓取URL,但不保证收录,也不能告诉你某个URL是否已经返回404。HTTPS同样不保证链接有效或页面安全。监测死链接要直接看HTTP状态码和链接来源,而不是依赖这些间接信号。
不同搜索引擎对404、410和301的处理方式并不完全相同,支持情况需要分别核查。你可以用搜索引擎的URL检查工具或日志中的抓取记录观察某个URL的状态,但不要把某一个平台的表现当作所有平台的统一结论。
假设你刚修复了二十个死链接,可以按下面步骤安排后续监测:
判断监测是否有效,不看“这次修了多少”,而看“同一批URL是否反复出现”。如果某个URL在修复后连续两个检查周期都返回200,且没有新的来源页指向旧地址,可以把它从高频观察名单移到低频抽查。如果它再次变成404,说明删除、跳转或内容管理流程中仍有未控制的环节,需要回到发布流程检查。
下一步,先导出最近一次爬取中所有非200状态码的URL,再和服务器日志中的404请求做一次比对。两份清单重合的部分优先处理,只出现在其中一份的,按站内引用或外部引用分别核查。