站点改版、换域名或者目录结构调整之后,最容易被忽略的不是页面本身,而是蜘蛛手里那张旧地图。它记得旧地址、记得旧内链、记得旧 Sitemap。如果你的新地址没有接上这些通路,蜘蛛要么继续抓旧地址,要么把新地址当成一批陌生 URL 慢慢试探。改版期间真正要做的,是把旧认知平稳地迁到新地址上。
改版会打断哪几件事
- 已发现 URL 的归属:索引里存的是旧地址,旧地址一旦失效,这条记录就断了。
- 内链指向:站内链接如果还指向旧地址,等于每天给蜘蛛发旧信号。
- Sitemap:Sitemap 里如果还是旧 URL,蜘蛛会优先按旧清单抓。
- 外链与收藏:外部入口短期内不会自动更新,旧地址仍会持续被访问。
- 抓取路径记忆:蜘蛛对目录层级和链接位置有惯性,新结构需要重新被走一遍。
301 是主通路,但要一对一
旧地址到新地址的 301 是最直接的通路,关键在映射关系要一一对应,而不是全站都跳到首页。全站跳首页会让蜘蛛认为大量旧 URL 都指向同一个页面,既无法把信号传到对应新页,也会让新页面的抓取路径变得混乱。
- 旧页有新页对应:301 到内容最接近的那一页。
- 旧页没有对应内容:返回 410 或 404,比留一个跳首页的 301 更清楚。
- 避免链式跳转:A→B→C 会让蜘蛛多走一跳,能合并就合并成 A→C。
- 避免长期挂 302:临时跳转不会稳定传递信号。
Sitemap 与内链要同步切换
改版当天最好做三件事:新 Sitemap 上线并提交、站内链接批量替换为新地址、旧 Sitemap 停止更新。不要长时间让新旧两套 URL 同时出现在 Sitemap 里,那会让蜘蛛在两批地址之间反复试探,抓取预算被摊薄。
内链的替换要覆盖导航、面包屑、正文链接、分页和列表页模板。模板层的链接如果漏改,蜘蛛每次顺着模板走都会走到旧地址,再由 301 绕回来,路径变长、效率变低。
旧地址怎么处置
有对应新页
保留 301 至少几个月,观察旧地址的抓取量下降到很低再考虑撤掉。撤早了,一些还没更新外链的入口会直接撞到 404。
没有对应新页
可以聚合到上一级栏目页做 301,或者直接返回 410。返回 200 的空页面是最糟的选择,蜘蛛会把它当成有效内容继续保留。
用抓取日志验证通路是否真的通
- 新地址首次被抓的时间,改版后多久出现。
- 旧地址的抓取量是否在下降,而不是突然归零。
- 301 命中的数量与分布,是否集中在少数几个旧地址。
- 404、410 是否出现异常高峰,分别指向哪些路径。
- 新 Sitemap 里的 URL 被实际访问的比例。
几个容易踩的坑
- 用 JS 或 meta refresh 做跳转,蜘蛛可能不执行或延迟执行。
- 改版期间顺手收紧 robots.txt,把新目录也挡在外面。
- canonical 还指向旧地址,等于自己声明真正的页面是旧的。
- 新站服务器不稳定,蜘蛛第一次来就超时,会降低后续抓取意愿。
改版的核心不是发个公告,而是让蜘蛛能用最短的路径走到新地址。通路顺了,URL 发现和抓取节奏自然会跟着回到正常轨道。