站点改版是抓取路径最容易出问题的时候。旧链接还在被蜘蛛和用户访问,新链接刚上线还没被收录,两套 URL 同时存在。这个阶段蜘蛛的行为会变得难以预测,但只要按顺序处理好几件事,路径重建通常能在几周内稳定下来。
改版期间蜘蛛面对的三种情况
- 旧 URL 仍可访问:蜘蛛继续按老路径抓,抓到的还是旧内容,新内容的发现被推迟。
- 旧 URL 直接返回 404:已经抓过的 URL 变成死链,蜘蛛需要重新从某个入口发现新地址。
- 旧 URL 跳转到新 URL:路径延续,蜘蛛跟着跳转走,这是损耗最小的做法。
301 是首选,但要注意成对与层级
旧页面对应新页面时,用 301 一对一指向。要避免两种情况:
- 跳转链:A→B→C,蜘蛛要多跳几次才到终点,中间环节越多,损耗越明显。
- 跳转到不相关页面:把整站旧 URL 全部跳到首页,蜘蛛看到的是所有旧内容都指向同一个地址,新页面很难被单独发现。
跳转的目标应当是内容最接近的新页面,而不是最省事的那个页面。
先改内链,再改 Sitemap
不少站点改版时顺序是反的:先把 Sitemap 换成新地址,内链还指着旧地址。蜘蛛从 Sitemap 拿到新 URL,抓回来解析页面时,看到的导航和正文链接仍然是旧路径,于是又沿着旧路径走一遍,新地址的发现效率并不高。
比较合理的顺序是:模板与导航先改,正文内的站内链接(尤其是历史文章里的)尽量批量替换,最后再更新 Sitemap。这样蜘蛛从任意一个入口进来,读到的链接结构都是一致的,不必在两套路径之间反复切换。
旧 URL 怎么处理
- 有对应新页面的,301 指向最接近的那一个。
- 确定不再提供的栏目,返回 410 或 404 都可以,410 语义更明确;不要返回 200 却显示“内容已删除”。
- 仍然有搜索需求、也确实保留的旧页面,可以不动,避免制造无意义的跳转。
用日志看重建进度
改版后的一到两周,可以按几个信号判断是否顺利:
- 日志里新 URL 的抓取次数是否在上升,旧 URL 是否在下降。
- 状态码分布:404、5xx 的比例是否异常升高。
- 新 URL 是从多个入口被发现的(首页、栏目页、内链、Sitemap),还是只靠 Sitemap 一条线。
如果新 URL 长期只出现在 Sitemap 的抓取记录里,通常说明站内链接还没改干净,蜘蛛缺少从页面出发的路径。
几个容易被忽略的细节
改版常常同时调整 URL 规则,这时候末尾斜杠、大小写、参数顺序这些细节会被放大。如果新旧规则不统一,同一个页面可能以两种形式同时存在,蜘蛛会在两份之间来回抓。改版前先定下一套规则:大小写统一、末尾斜杠统一、参数尽量少用或按固定顺序排列。
分页和筛选参数页面也容易在改版时被重新生成一遍,产生大量低价值 URL。如果这些页面本来就不需要被抓,改版时顺手在 robots 或 noindex 上做一次清理,比之后再收拾省事得多。
改版不会让抓取量立刻恢复,一般需要几周时间让蜘蛛把新路径走熟。这段时间保持服务器稳定、减少报错,比反复提交地址更有用。