
内容站规模扩大后最容易被忽略的并不是新文章发布而是旧文章里的链接逐渐失效。一个页面被删除、路径被调整、栏目被重新命名都会让过去正文中的链接变成 404。长期累积后用户阅读被打断页面之间的知识关系也被削弱。内部链接检查不需要复杂系统但需要形成稳定机制。一、先区分三类链接第一类是导航链接包括顶部导航、页脚链接、面包屑和栏目入口。这类链接影响站点整体可访问性应优先检查。第二类是正文链接例如文章中指向相关概念、配置说明、错误排查和示例页面的链接。这类链接数量最多也最容易随着内容更新而失效。第三类是资源链接例如文件下载、图片地址、接口文档和外部依赖。这类链接除了检查状态码还应注意访问权限和文件版本。二、建立页面清单最基础的做法是在构建阶段生成一份 URL 清单。对于静态站点可以直接读取构建目录中的 HTML 文件对于动态站点可以从路由表、内容管理系统或 Sitemap 获取公开页面列表。页面清单至少应包含地址、页面标题、最后更新时间和页面类型。这样在检查链接时可以区分“链接不存在”“页面被迁移”“页面故意下线”等不同情况。三、提取并验证链接链接检查的核心流程并不复杂。先读取每个公开页面的 HTML。提取 a 标签中的 href。过滤 mailto、tel、javascript、锚点和非 HTTP 协议。将相对路径转换为完整 URL。对站内 URL 发起请求并记录状态码。检查结果中200 表示正常访问301 和 302 需要确认跳转目标是否合理404 表示目标不存在500 则可能是服务器问题。需要注意的是不能只看最终状态码。有些链接虽然最终返回 200但中间经历多次跳转或者被跳转到首页这同样可能意味着原页面关系已经丢失。四、避免把“跳转到首页”当作修复有些站点为了避免用户看到 404会把所有不存在的路径跳转到首页。这样表面上没有错误状态码但用户无法找到原内容爬虫也无法理解旧链接对应什么页面。更好的做法是存在明确替代页面时跳转到对应新页面不存在替代页面时返回规范的 404 或 410 页面并提供站内搜索和推荐入口。五、将检查加入发布流程内部链接不应只在出现问题后修复。可以在每次发布前后自动执行一次检查并把结果分为阻断问题和提醒问题。阻断问题包括首页、栏目页和核心文档的 404 链接。提醒问题包括外部链接失效、重定向过多、锚点不存在或页面加载过慢。当内容量较大时不必每次都全量请求所有页面。可以优先检查本次新增、修改和删除页面相关的链接再按周期做全站扫描。六、链接文本也需要维护链接并非只有地址正确就够了。正文中的链接文本应说明目标内容而不是简单写“点击这里”或“查看详情”。清晰的链接文本可以帮助读者判断是否需要进入下一页也有助于维护者理解页面关系。例如“查看缓存失效排查步骤”比“更多内容”更有意义。内部链接检查是一项基础但长期有效的工作。它让内容不只是单篇存在而是形成一套可持续阅读、持续维护的知识网络。