死链检查不是一次性任务,后续监测的关键是把“全站扫描”换成“按优先级轮查加自动报警”。人手有限时,先监测流量集中、改动频繁、对外引用多的页面,再逐步覆盖全站。下面用一个假设例子说明具体安排。
假设某内容站约三百个页面,只有一个人每周能投入两小时。第一周用爬虫工具做一次全站扫描,导出所有返回 404、410 或连续跳转的链接,按来源页面归类。第二周起不再全站重扫,而是把页面分成三组:
排期可以设为高优先组每两周查一次,中优先组每月一次,低优先组每季度一次。这个节奏是示例,实际间隔取决于改版频率和外链数量。判断依据是:页面越常被改动、越常被外部引用,越容易产生新死链。
全站爬取耗时且会重复发现同一批老问题。更省力的做法是让监测工具或脚本定期抓取重点页面,把新出现的错误链接单独报出来。可以执行的步骤:
常见错误是只看服务器日志里的 404 数量。日志中的 404 可能来自扫描器、旧域名残留或被删除的图片,数量大但不代表用户真的点到。更可靠的判断是看错误链接是否出现在可点击的页面内容里,以及是否有人访问过该来源页面。
后续监测要能区分几种情况,处理方式不同:
检查时可以用 curl -I 查看单个地址返回的状态码,作为工具结果的交叉验证。注意 robots.txt 中的抓取限制只影响爬虫能否访问,不等于把页面从索引中移除;站点地图也不保证收录。监测时不要把这些当成死链处理依据。
如果连续两轮监测中高优先组没有新增死链,可以把间隔放宽;如果站点刚做过改版、迁移或批量删除内容,应临时把全站扫描提前一次。判断标准不是“扫了多少页”,而是“新增死链是否在影响用户访问前被发现”。当人力进一步减少时,优先保留高优先组的监测,暂停低优先组的定期扫描,改为每半年人工抽查一次。
下一步:先导出当前全站错误链接清单,按来源页面分成三组,再为高优先组设一个两周后的复查提醒。