死链检测:正常与异常结果怎样区分

📍 WDQWDWQD987AAAAA:216.73.216.165
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /ed57107c318e.html
📄

死链检测:正常与异常结果怎样区分

死链检测的正常结果,是链接最终返回可访问状态,通常是 HTTP 200,并且页面内容与链接目标一致;异常结果则是返回 4xx、5xx、超时、跳转到无关页面,或表面 200 但实际展示错误页。区分的关键不是单看状态码,而是把状态码、跳转链和页面内容放在一起判断。

先看检测工具给出的三类信号

第一次做死链检测,最容易只盯着“红色报错”。实际应先分清工具输出的信号类型:

正常结果的判断标准

一个链接可判为正常,通常要同时满足:请求在合理时间内完成;最终状态码为 200;跳转次数少且终点是目标页面;页面标题、正文主题与链接原本指向的内容一致。

如果链接是 301 跳转,也要看它是否跳到了最相关的页面。例如旧文章地址跳到新文章地址,属于正常;跳到首页或栏目页,虽然能打开,但从用户体验和链接关系看已经偏离目标,应标记为需要处理。

异常结果的常见类型与判断方法

异常不等于只有 404。可以按下面顺序判断:

  1. 返回 4xx:404、410 等通常说明目标不存在。若是站内链接,应修复或移除;若是外链,无法控制对方页面,只能处理自己站内指向它的入口。
  2. 返回 5xx 或超时:可能是对方服务器临时故障,也可能是自己服务器配置问题。不要一次检测就下结论,应间隔复查,看是否持续出现。
  3. 跳转到无关页面:终点能打开,但内容与链接文字、上下文不符,应视为异常跳转。
  4. 软 404:状态码为 200,但页面提示不存在、内容为空或只剩模板。需要抓取页面标题和正文关键词来判断。
  5. 被 robots.txt 限制:检测工具可能无法抓取,但这不等于链接已死,也不等于页面已被移除。抓取限制和索引移除是两件事,应分别核查。

用一个小例子走完判断流程

假设检测到链接 https://example.com/old-page 返回 301,跳到 https://example.com/new-page,最终 200,页面标题与旧链接主题一致。这个结果可判为正常跳转,保留跳转即可。

如果同一链接最终 200,但页面标题变成“首页”,正文没有原主题内容,就应判为异常跳转。处理方式是改跳到最相关页面,或直接移除该链接。

如果返回 503,先不要立刻删除。间隔一段时间复查,若持续 503,再检查服务器日志和目标地址是否仍存在。临时故障和永久失效的处理方式不同。

处理之后怎样复查

修复完成后,不要只相信一次检测结果。应重新抓取原链接,确认最终状态码、跳转终点和页面内容都符合预期;站内链接还要检查全站是否还有其他位置指向同一失效地址。站点地图中出现某链接,不代表它一定被收录;同理,检测工具显示正常,也不代表搜索引擎一定收录。复查的目标是确认链接可访问且指向正确,而不是保证排名或收录。

下一步,可以先选一批站内重要链接做小范围检测,按“状态码—跳转终点—页面内容”三项记录结果,再决定修复、保留还是继续观察。

图1 图2

nginx