在网站死链检测中,访问抓取和索引结果是两个不同阶段:抓取是搜索引擎或其他程序请求并读取页面,索引是把读取后的内容存入可检索数据库。一个死链可能被反复抓取,但不会进入索引;一个页面也可能被索引后,原地址才变成死链。判断时不能只看“有没有被抓过”,也不能只看“搜不搜得到”,而要分别收集请求记录、状态码和索引状态证据。
假设某站点把一篇旧文章从 /a/1001 迁移到 /b/1001,原地址没有设置跳转。此时可能出现三类结果:
/a/1001,服务器返回 404,这属于访问抓取层面的结果。/a/1001,短期内仍可能在搜索结果中显示旧地址,这属于索引层面的残留。/b/1001 被抓取并返回 200,但尚未被索引,这属于“已抓取、未索引”。常见错误是看到旧地址还能搜到,就断言“死链没有被处理”;或者看到日志里有抓取记录,就认为“页面已经被索引”。这两种判断都混淆了阶段。
访问抓取最直接的证据是服务器访问日志或抓取统计。重点看四项:
200 表示正常返回,301 或 302 表示跳转,404 或 410 表示不可访问。如果日志显示某地址持续返回 404,只能说明抓取阶段已经发现该地址不可用,不能直接说明索引中是否还有旧记录。反过来,日志中没有某地址的抓取记录,也不等于它从未被索引,因为索引可能来自更早的抓取或外部链接数据。
索引层面的检查要围绕“该地址是否仍作为独立结果出现”来做。可以逐项核对:
robots.txt 是否屏蔽了旧地址。抓取限制不等于可靠的索引移除,被屏蔽的地址仍可能因外部链接出现在索引中。如果旧地址仍出现在搜索结果中,而服务器返回 404,通常说明索引尚未完全更新。此时应优先确认返回状态码是否正确、是否有跳转、是否误用 robots.txt 屏蔽,而不是反复提交同一地址。
把证据放进四个组合中,定位会更清楚:
robots.txt 阻止。需要检查内链、站点地图和抓取限制。注意:同一现象可能有多个解释。例如“旧地址仍可搜到”既可能是索引残留,也可能是其他页面转载了该地址,不能只凭一个搜索结果就断定原因。
按下面顺序做一次死链核查:
404 或 410,确认是死链。robots.txt 和站点地图,确认是否存在抓取限制或错误提交。301 跳转到新地址,并观察后续抓取与索引变化。判断结果时记住:404 是访问抓取层面的明确信号;索引是否移除需要另行观察。HTTPS 只表示连接加密,不保证页面没有死链,也不保证一定被索引或获得排名。
下一步:选取一个已知死链地址,分别记录它的 HTTP 状态码、最近抓取时间和当前索引状态,再根据四象限判断问题出在抓取阶段还是索引阶段。