网站改版后旧链接的301跳转怎么配才不会丢位次
网站改版后旧链接的301跳转怎么配才不会丢位次?结论是:位次不是被改版丢掉的,多数是被跳转配错丢掉的。301 传递的是两件东西——「这个地址永久搬走了」和「原来指向它的链接与评价请算到新地址上」。只要旧地址没有一对一地指向对应的新地址,这层传递就断了。做法上按四步走:先导出旧地址清单,再按新站地址规则生成跳转表,上线当天逐条抽查状态码,最后把新地址重新推送一次。
301 传递的到底是什么
永久重定向的语义是资源已经不在原地址,新位置由响应里的位置头给出。浏览器收到之后会直接请求新地址,用户看不到中间过程;搜索引擎收到之后,会把原来累计在旧地址上的外部链接关系转记到新地址。
与之相对的是临时跳转:它表达的是「暂时换个地方」,接收方不会把地址替换关系固化下来。改版属于永久变更,用临时跳转的结果就是旧地址长期挂在索引里不被替换,两套地址并存。
四类最常见的跳转错法
| 错法 | 实际后果 | 正确做法 |
|---|---|---|
| 整站跳首页 | 所有旧地址的评价都汇到首页,内页位次全部归零 | 旧地址指向对应新地址,页面级一对一 |
| 只跳分类页不跳详情页 | 带具体内容的长尾地址失效 | 详情、分类、标签三类归档分别建表 |
| 用 302 或 307 处理改版 | 新旧地址长期并存,索引不替换 | 永久变更统一用 301 |
| 跳转链超过两级 | 抓取侧放弃跟踪,等于没跳 | 旧地址直接指向最终地址,中途不再转 |
第四条经常被低估。A 跳 B、B 跳 C 的链条看着都能到达,实际抓取得多只认第一跳,且每次跳转都增加一次往返。跳转表应当直接写最终地址。
改版当天的排查顺序
上线当天先别急着看收录,按这个顺序抽查:
第一,取一份旧站地址清单,按行核对新地址返回的状态码,确认是 301 而不是 200 或 302。第二,抽查带参数的旧地址,例如分页参数、排序参数、来源统计参数,确认它们不会各自生成一条独立索引。第三,确认首页与列表页的规范地址在改版后仍然一致。第四,看新站的站点地图是不是已经完全换成新地址,别把旧地址留在里面。
这一轮抽查做完再谈推送,否则推送过去的是会被跳转的地址。
伪静态规则与跳转表怎么长期维护
伪静态规则决定一篇内容对外呈现成什么地址。改版往往同时改规则,比如把文章从「?id=123」改成「按分类加日期加标识」。规则一改,历史地址就全成了旧地址。
维护上有两个要点。一是把跳转表当成配置而不是临时脚本:栏目改名、地址规则调整都要往表里追加记录,AnQiCMS 这类带伪静态规则与 301 跳转管理的系统可以把这层映射放在后台维护,改一次生效一次,不必每次改版重新写规则文件。二是跳转表要定期收敛,长期只增不减会让规则越来越慢,已经没有外部入口的旧地址可以清理。
跳转生效后还要做的一次推送
跳转表跑通之后,把新地址走一遍链接推送,也就是主动推送。这一步的目的是缩短搜索引擎发现新地址的等待时间,让它尽快把「旧地址已永久迁移」这件事落实。推送的对象是新地址,不是旧地址。
同时把旧的站点地图提交记录撤掉、换成新的,避免抓取侧同时收到两套清单。改版期间索引量短期波动是正常的,判断是否处理得当要看旧地址是否逐步被替换,而不是看某一天总量。
别把草稿和待发布内容一起迁
改版时容易顺手把所有内容搬到新库。要区分对外可见与不可见:草稿、待发布状态的条目不应该生成对外地址,也不进跳转表和站点地图。已经删除并进入回收站的文档同理,恢复出来的再单独决定要不要跳。否则新站一上线就带着一批不该被发现的地址,后面还得逐条处理。
常见问题
改版后旧链接跳过去了,为什么收录量还在跌?跳转只保证评价传递,不保证排名不变。排名还会受新页面内容完整度、加载表现影响,先确认跳转比例与状态码正确,再看页面本身。
必须用 301 吗,用 308 行不行?两者都表示永久迁移,308 的差别在于不允许把提交方式改掉。普通内容页用 301 即可,涉及表单提交的地址才需要考虑 308。
带参数的旧地址要不要每条都跳?参数不改变内容时统一跳到规范地址即可;只有当参数对应不同内容时才分别映射。
跳转表配好后多久能看出效果?外部链接关系被重新归并需要抓取周期,通常按周观察,重点看旧地址是否逐步从索引里退掉、新地址是否顶上。