死链接是指那些指向网页已经不存在的链接. 点击死链接将转跳至 404 错误页面, 表明请求的页面不存在. 浏览网页的时候突然遇到一个 404 页面, 你会怎样做? 多数人第一反应是离开当前页面, 转而访问其他网页. 不管自然人还是搜索引擎, 死链接都存在负面影响, 所以很有必要找出并处理掉它们. 本文将告诉你如何找出那些在你网站上的死链接.

桌面工具 – Xenu Link Sleuth

Xenu Link Sleuth 是一个 Windows 系统上的单机桌面应用, 一个牛逼的死链接工具. 无论链接是否正常, 程序都会爬取, 显示成表格并标明状态.

Xenu Link Sleuth

Xenu Link Sleuth

每次操作完成后会弹出窗口, 询问是否提交检测报告. 这里你可以输入 FTP 信息上传报告. 如果取消操作将生成一个本地文件, 你可以看到指定网站的所有死链接.

Web 服务 – Google 网站管理员工具

只要登录 Google Webmaster Tools, 并验证过你的网站, 即可开始找出那些出错的页面. (没玩过的同学可以参考 Google 网站管理员工具的入门文档)

Crawl errors

Crawl errors

  1. 在侧边栏点击 Diagnostics -> Crawl errors, 选中 Not found 分类.
  2. 点击 Linked From 栏的链接查看有哪些页面含有对应的死链接.
  3. 将 URL 粘贴到 Google 搜索查看是否存在搜索结果, 确定这些链接被 Google 收录了.

WordPress 插件 – Broken Link Checker

如果你使用 WordPress 搭建网站, WordPress 插件 Broken Link Checker 是一个不错的选择. 作为后台的管理工具, 与其他工具不一样, 可根据范围 (文章, 页面, 评论, 友情链接) 和文章类型 (已发布, 日程安排中, 草稿, 私有, …) 等, 拥有更多配置来控制爬取死链接的方式.

Broken Link Checker

Broken Link Checker

程序会依照配置中的设定定期爬取页面, 并将所有死链接显示为表格, 包含 URL, 链接内容和包含死链接的页面.

比较探测死链接工具

Xenu 可以爬取到特定网站的链接, 但不能爬取外站链接. 假设现在有 a.com, 谋篇文章链接是 a.com/old.html, 因为网站结构变化, 链接更改为 a.com/new.html, 管理员将站内所有链接都修改到新的路径上. 但是另一个调用该页面的网站并不知道 a.com 修改了链接, 依然链向 a.com/old.html, 如果不进行特殊处理, 用户通过老链接将到达 404 页面. 对于这种外站页面, 桌面工具无能无力.

因为 Google 强大的网页索引, Google 网站管理员工具可以探测到它可以找到的所有链向网站死链接, 包括外站的. 但因为 Google 爬取不是实时的, 处理后也不能立即看到效果.

Broken Link Checker 跟桌面工具特性和功能差不多, 但是 WordPress 插件有强大的配置, 可以跟踪. 可以用来进行长期管理和监控.