搜索抓取

站点改版换 URL:让蜘蛛从旧地址顺利走到新地址

改版、换目录、合并栏目都会产生一批失效 URL。本文从重定向映射、站内内链替换、Sitemap 更新和服务器稳定性四个角度,说明怎么让蜘蛛在改版期间顺利从旧地址走到新地址,减少抓取浪费,也让新页面更快回到正常的抓取节奏里。

搜索抓取

站点改版换 URL:让蜘蛛从旧地址顺利走到新地址

改版、换域名、调整目录结构,都会让一批 URL 失效。蜘蛛手里存着旧地址,如果它访问旧地址时得不到明确指向,就会把旧页面标记成失效,而新页面要等下一次发现。这个过程里,你能控制的部分其实不少。

蜘蛛在改版中最容易卡住的三个地方

第一个是旧地址返回的内容含糊。比如直接返回首页内容,或者用 200 状态码返回一段提示文字,蜘蛛很难判断这到底是迁移,还是页面换了内容。

第二个是重定向链条太长。A 跳 B,B 跳 C,C 才是最终页面。每多一跳,就多一次请求和一次等待,链条过长时蜘蛛可能在中间就放弃了。

第三个是新旧两套地址同时可访问。内容一样、地址不同,蜘蛛会当成独立页面分别处理,抓取量和页面信号都被分散。

第一步:把映射关系写清楚

最省事的做法是让旧地址直接 301 到最终的新地址,跳过中间环节。

  • 一对一:旧文章页 301 到对应的新文章页。
  • 多对一:旧分类下多个子页合并成新分类页时,全部 301 到新分类页。
  • 确实没有对应内容:返回 410 或 404,别硬跳到首页。

302 表示临时跳转,蜘蛛会保留旧地址继续观察;确定不再回退时用 301 更合适。另外,尽量别用 JavaScript 或 meta refresh 做跳转,蜘蛛对这两者的处理不如 HTTP 状态码直接。

第二步:站内链接要一起换,不能只靠重定向

重定向解决的是“已经知道旧地址”的蜘蛛。站内导航、面包屑、正文里指向旧地址的链接,如果不改,蜘蛛每次爬到这里都要多走一次重定向,抓取效率被白白消耗。

改版上线前,可以把站内所有内链做一次全量替换;改版后再抽查几类高频页面:首页导航、频道页列表、文章正文里的相关推荐。

重定向是兜底手段,不是长期方案。一条链接长期靠 301 才能到达目标,说明站内还有没清理干净的旧地址。

第三步:让 Sitemap 反映真实情况

Sitemap 里应该只保留能正常访问、且希望被收录的新地址。旧地址如果已经 301,就没必要继续留在 Sitemap 里反复提交,两者给出的信号会互相干扰。

如果改版是分批上线的,可以按批次更新 Sitemap 并提交,让蜘蛛按节奏发现,而不是一次性把所有新 URL 全推过去,造成短时间内的抓取高峰。

服务器稳定性决定蜘蛛愿不愿意多待

改版期间访问量和抓取频次往往同时上升。如果服务器响应时间明显变长,或者开始出现 503、连接超时,蜘蛛会降低抓取频率,新页面的发现速度反而更慢。

  • 改版窗口尽量选在站点访问低谷期。
  • 关注 5xx 比例,别让它持续出现在日志里。
  • 大站可以先用小范围目录验证跳转是否正确,再全量切换。

上线后的自查清单

  1. 随机抽 20 个旧地址,看是否一步到位跳到新地址。
  2. 检查是否存在旧地址和新地址同时返回 200 的情况。
  3. 确认 Sitemap 里没有混入失效地址。
  4. 看服务器日志里,新地址的抓取比例是否在上升。
  5. 确认站内导航和正文内链没有残留旧路径。

改版不是一次性动作,而是让蜘蛛重新认识一批地址的过程。把跳转、内链、Sitemap 这三件事对齐,蜘蛛走完这段路的成本会低很多,新页面进入正常抓取节奏的时间也更可控。