免费失效链接检查工具
在真实的 Chrome 浏览器中打开您的页面,测试页面上的链接,找出加载失败的脚本、图片和其他文件,捕获 JavaScript 错误,并审查页面上的表单 — 从不提交表单。
此工具检查什么
指向您自己页面的链接
与页面同属一个网站(相同协议和域名)的链接,从浏览器渲染后的页面中收集,并优先测试导航中的链接。
最多 12 个内部链接和 5 个外部链接
指向您自己页面的前 12 个不重复链接,以及指向其他网站的前 5 个链接。会跳过指向您自己子域名的链接以及电子邮件、电话和 javascript: 链接,#section 链接视为其所属页面。
失效是指出错或无响应
内部链接返回 400 或更高状态码,或 8 秒内没有响应,即视为失效。重定向会逐跳跟随(最多 5 次)。对于其他网站,401、403、405、429 和 999 视为无法确定,因为许多网站会拒绝自动访问。
JavaScript 错误
页面加载时抛出的未捕获错误,这往往意味着某个菜单、表单或轮播图无法正常工作。
控制台错误
页面在浏览器控制台中记录的错误。
表单检查(从不提交)
每个表单的标记:HTTP 页面上或通过 http:// 发送的密码字段、用 GET 发送的密码、只用占位符充当标签、缺少标签、输入类型、autocomplete 提示、外部 action、CSRF 类令牌和提交按钮。
加载失败的文件
页面加载时加载失败或返回错误状态的自有脚本、样式表、图片和字体,以及显示为损坏的图片。
检查的工作原理
我们在无头 Chromium 中加载页面,等待加载完成,然后按浏览器看到的样子收集页面上的链接 — 因此也包括由 JavaScript 添加的链接。每个链接会收到一次快速的 HEAD 请求;如果服务器不允许 HEAD,则改用 GET。重定向会手动跟随,每一跳在请求前都会确认是公开地址。
从不提交、点击、聚焦或填写表单。我们读取表单的 HTML,并在不触碰任何字段的情况下询问浏览器一次:它是否会阻止空白提交。评分从 100 分开始:每个失效的内部链接扣 10 分(最多 40 分),每个未捕获的 JavaScript 错误扣 10 分(最多 30 分),每个控制台错误扣 5 分(最多 20 分),每个加载失败的自有文件扣 4 分(最多 20 分),HTTP 页面上的密码表单、提交到 http:// 或使用 GET 各扣 10 分,只用占位符充当标签扣 3 分。失效的外部链接、损坏的图片和其他表单提示仅供参考,不扣分。
这是对单个页面的快速检查。如需检查多个页面上的链接,请创建免费账户并运行网站扫描,它会逐页跟随链接,还会报告指向重定向的链接。
您将看到的证据
每个失效链接都会列出其 URL、返回的状态码(或“无响应”)和链接文字。加载失败的文件会显示其 URL 和状态,JavaScript 和控制台错误会显示前几条消息,表单发现会指出相关表单和字段 — 只显示字段名称和标签,从不显示任何输入的内容。我们无法测试的链接(例如私有地址)会标记为未测试。
此工具不检查的内容
页面上的每一个链接
只测试前 12 个内部链接和前 5 个外部链接。其他页面上的链接需要进行网站扫描。
屏蔽自动访问的网站
有些网站会以 403 或 429 拒绝检查工具。我们将这些视为无法确定,而不是失效。
您的表单是否真正可用
由于从不提交表单,我们无法测试发送后会发生什么、服务器端验证、CSRF 防护或垃圾信息过滤。
按钮和交互
不会点击任何内容,因此只在点按后才出现的错误 — 例如打开菜单、加入购物车 — 不会被发现。
我们常发现的问题
已移动或删除的页面
仍有链接指向的旧博客文章、已下架的产品或已改名的页面。
链接中的拼写错误
手动输入的链接中少了一个字母或多了一个斜杠。
改版后遗留的链接
旧的 URL 结构,或指向网站测试副本的链接。
服务器错误
因插件或模板损坏而返回 500 错误的页面。
加载时出错的 JavaScript
缺少某个库、脚本加载顺序错误,或者代码依赖了此页面上不存在的元素。
加载失败的文件
改版或插件更新后返回 404 的图片、字体或脚本。
不安全或没有标签的表单
仍通过 HTTP 提供的页面上的登录表单、依靠占位符文字而不是标签的搜索框,以及使用 type="text" 的电子邮件字段。
如何修复
更新或删除链接
如果页面已移动,请将链接改为新地址。如果页面已永久删除,请删除该链接,或将其指向最接近的有用页面。
为旧地址设置重定向
设置从旧 URL 到新 URL 的永久(301)重定向,让书签和其他网站的链接也能继续正常使用。
从第一个 JavaScript 错误开始修复
打开页面,然后打开浏览器的开发者工具(F12)并切换到 Console 标签页。第一个错误往往会引发其余错误,所以请先修复它。
发布后重新检查
在修改后,以及移动或删除页面后,再运行一次检查。
整理您的表单
通过 HTTPS 提供和提交表单,凡是包含密码的表单都使用 method="post",为每个字段提供可见的标签,并使用正确的 type 和 autocomplete 值(email、tel、current-password),让手机和密码管理器能够提供帮助。
常见问题
它会检查指向其他网站的链接吗?
会,但只有少量:指向其他网站的前 5 个链接。由于许多网站会拒绝自动访问,403 或 429 等状态被视为无法确定,失效的外部链接仅作为参考信息报告,不会降低您的评分。不测试指向您自己子域名的链接。
为什么只检查 12 个内部链接?
这样可以让免费检查保持快速:每个链接都是一次单独的请求。优先测试导航中的链接,其余链接按页面顺序测试。使用免费账户进行网站扫描可以覆盖更多页面和链接。
某个链接被报告为失效,但在我的浏览器中可以打开。为什么?
有些服务器会屏蔽自动访问、要求登录或限制请求频率,并向我们的检查工具返回 403 或 429 等错误。如果页面对真实访客正常,您可以忽略它 — 或者请您的主机服务商放行此项检查。
它会提交我的表单或点击按钮吗?
不会。从不提交、点击、聚焦或填写表单,因此不会向您的网站发送或更改任何内容。我们读取每个表单的 HTML 和浏览器自身的验证状态,并报告字段名称和标签 — 从不报告字段的值。
为什么控制台错误会降低评分?
它们通常意味着有些东西对访客不起作用,比如脚本加载失败。它们的扣分比失效链接或未捕获的错误少,报告会显示前几条消息,方便您找到它们。
实用指南
- How to fix broken links on your website (and stop new ones appearing)Where broken links come from, how to find them, how to choose between updating, redirecting and removing each one, and how to stop them coming back.阅读指南
- How to check your website's forms: labels, input types, HTTPS and CSRFForms are where visitors hand you their data. What to check in every form, how to fix the common problems, and why Rudra reviews forms without ever submitting them.阅读指南