维护页撤下不等于链接关系已经复原。恢复后最该核对的是三类残留信号:被维护页替换掉的原始响应是否真正回到 200 或 301,内链与外链是否仍指向维护页或旧跳转,以及日志和索引中是否还留着维护期的抓取与缓存痕迹。这三类信号里,任何一类没清干净,死链接检测都会给出误导性的结果——你以为修好了,实际只是维护页在替死链挡枪。
维护期间常见的做法是把整站或某个目录的请求统一返回 503 加一个维护页,也有站点直接返回 200 的静态维护页。这两种做法留下的残留完全不同。
判断依据很简单:用不带 Cookie、不带登录态的请求访问几个原 URL,看返回的是维护页还是真实内容。如果返回维护页,说明重写规则、CDN 规则或反向代理配置还有一层没撤。
维护配置往往写在多层:Web 服务器重写、CDN 边缘规则、应用层中间件。撤掉其中一层,请求可能仍被另一层拦截。恢复后应优先核对以下位置。
实际动作:对同一批原 URL 分别从源站直连和经 CDN 访问,对比响应头和正文首段。如果两者不一致,先清边缘缓存再复测。这个动作的结果直接决定下一步——若直连正常而 CDN 异常,问题在缓存层;若两者都异常,问题在源站配置。
维护期间有些团队会把导航、站点地图甚至部分内链临时改到维护页,恢复后忘记改回。这类残留不会让死链接检测报错,但会让抓取方持续走到维护页,稀释原 URL 的链接关系。
这里有一个取舍:如果维护页 URL 本身已被外部链接引用,直接删除会产生新的死链接。此时更稳妥的做法是让维护页返回 410 或 301 到首页,而不是留着一个 200 的孤立页面。是否保留取决于该维护页是否有独立外链价值——没有就退出,有就改写为说明页并保留。
恢复后查看服务器日志,如果仍看到大量对维护页 URL 的请求,或者抓取方仍在按维护期的频率访问,说明信号还没完全切换。需要区分几种合理解释:
索引层面,如果搜索结果显示的是维护页标题或描述,说明索引尚未更新。此时不要仅凭“搜索结果还是维护页”就断定恢复失败,还要看原 URL 是否已能正常返回内容。请求量或抓取量归零也不能单独证明处理正确,它可能只是抓取周期未到。
假设例子:某站点维护时把 /blog/ 下所有 URL 返回 503 并附带维护页。恢复后源站正常,但 CDN 仍缓存 503 响应,同时站点地图还列着维护页地址。此时死链接检测会把 /blog/ 下页面标为异常,但真正需要处理的是清缓存和改站点地图,而不是去修那些页面本身。先做这两步,再复测,才能判断页面是否真的有问题。
维护页不是必须删除。判断标准是它是否还承担有效功能:
三种选择的前提不同,不能一刀切。核心是:维护页可以留,但不能继续替原 URL 应答。恢复后先确认原 URL 的响应和内容,再决定维护页的去留,最后复测内链、站点地图和日志,才算完成一轮死链接检测的收尾核对。