站点运营

站点运营:網站改版與 URL 迁移,別让蜘蛛拿着舊地图找新地址

網站改版往往牵動成百上千個地址,而蜘蛛手里還拿着改版前的舊地图。本文從 URL 清單盘点、301 一對一映射、舊地址保留周期、内鏈與站点地图同步,到上线後要持續盯的日誌資料,梳理一套可执行的迁移自查流程,帮你在改版期間少丢地址、少出死鏈。

站点运营

站点运营:網站改版與 URL 迁移,別让蜘蛛拿着舊地图找新地址

網站改版是运营里少见的“大動作”——導航重排、栏目合並、CMS 更換、路径調整,往往一次改動就牵動成百上千個地址。對用戶来说,点進去能看到新頁面就算完成;對搜尋蜘蛛来说,它手里還拿着改版前的舊地图,如果没人告诉它新路怎么走,它只會在舊地址上撞墙,然後慢慢降低對整站的訪問积极性。

改版前:先把 URL 清單列出来

動手改代碼之前,建议先導出一份全站 URL 清單(可以從站点地图、服務器日誌、CMS 後台三個来源合並去重)。然後给每條地址标一個去向:

  • 原样保留:内容和路径都不變,不用處理;
  • 換路径:内容還在,只是位置變了,需要一對一 301;
  • 合並:几篇内容合成一篇,舊地址统一指向新主地址;
  • 下线:确實不再提供,返回 404 或 410,不要悄悄跳首頁。

這一步看起来笨,但它决定了後面所有工作的准确度。没有清單,跳轉規則就只能靠感觉寫,漏掉的地址會變成蜘蛛眼里的死胡同。

跳轉規則:一對一,別绕圈

301 是改版里最常用的沟通方式,但寫法上有几個坑:

  1. 一對一映射。A 地址跳到 B 地址,B 就是最终頁面,不要再從 B 跳到 C。鏈式跳轉會让蜘蛛多走几步,也容易在中間断掉。
  2. 不要全站跳首頁。把几百個失效内頁统统 301 到首頁,等于告诉蜘蛛這些内容都不存在了,原本积累的相關性也會散掉。
  3. 跳轉目标要是可正常打開的頁面。如果目标頁本身返回 404 或需要登入,跳轉就白做了。

如果整站換了域名,除了服務器层做跳轉,還應在頁面里用 canonical 指向新域名版本,站点地图也換成新域名的地址,让几處信号保持一致。

舊地址不要当天就消失

改版上线後,舊 URL 的 301 規則建议至少保留半年到一年,具体看抓取频率和内容量。蜘蛛重新發現新地址需要時間,用戶收藏夹、外鏈、社交平台上的分享連結也都還指着舊地址。這段時間里,服務器日誌中舊地址的訪問量會從高位慢慢回落,等它降到很低的水平再考虑撤掉。

内鏈、站点地图、導航一起改

外部的跳轉只是一半,站内也得同步。栏目導航、面包屑、相關推荐、文章正文里的内鏈,如果還指向舊路径,蜘蛛顺着爬過去又得吃一次跳轉。改版时最好用工具掃一遍全站内鏈,把指向舊地址的連結直接替換成新地址,只留外鏈和用戶入口走 301。

站点地图重新生成並提交,同时检查 robots.txt 里有没有寫死舊的目錄規則——這類细节最容易在改版时被忘掉。

上线後盯這几组資料

  • 服務器日誌里舊地址的 301 命中量是否在下降;
  • 是否出現意料之外的 404,尤其是原本有流量的頁面;
  • 新地址被蜘蛛抓取的次數是否在逐步上升;
  • 站点地图里的地址是否都能正常打開。
改版不是一次上线就結束的動作,而是上线之後一到两個月的持續观察。跳轉規則寫错一行,可能要几周後才從日誌里看出来。

把改版当成一次搬家:舊地址留一張轉寄單,新地址把门牌挂清楚,来訪的人自然找得到地方。