網站改版、換域名或者調整目錄结构,都會让一批 URL 發生變化。對搜尋侧来说,這不是換個地址這么简單,而是一次收錄關系的整体搬迁。麻烦的地方在于:舊 URL 上已经积累了一段歷史,新 URL 上還是空白,而搜尋引擎並不知道你希望哪一版留下来。
先分清你改的是哪一類
不同的改法,處理重点不一样。
- 只換域名:路径结构不變,可以一對一映射,最容易做干净。
- 換路径结构:比如 並非所有格式都能直接套用,像 /news/123.html 變成 /article/123 這種,需要逐條對照,規則寫不好就會漏。
- 換技術栈但 URL 不變:地址没變,頁面模板和渲染方式變了,問题往往出在抓取和渲染环节,属于另一類排查。
迁移前要准备好的三样東西
- 新舊 URL 對照表。哪怕只有几百條,也建议落成一張表。没有對照表,後面的 301 規則只能靠猜,漏掉的頁面會變成 404。
- 301 規則本身。逐條映射優先,正則批量映射次之。要检查有没有跳轉鏈:A 跳 B、B 又跳 C,鏈條越長,信号传递越容易打折。
- 站内入口的同步更新。導航、面包屑、列表頁、内文連結、站点地图,凡是能点到舊地址的地方都要改。内鏈還指向舊 URL,是迁移後新頁面上不来的常见原因之一。
過渡期该盯哪些信号
抓取侧
從服務器日誌里看舊 URL 與新 URL 的訪問比例變化。比較理想的狀態是新 URL 的抓取量逐步上升,舊 URL 收到的訪問慢慢變成 301 命中。如果一段時間過去,日誌里几乎只见舊 URL、不见新 URL,說明新地址還没有被有效發現,先回去检查内鏈和站点地图。
索引侧
看索引覆盖里新舊 URL 的並存情况。過渡期出現两者同时存在是正常的,重点看趋势:舊的在减少、新的在增加,方向對就行。反過来,如果舊的迟迟不退、新的也不涨,通常指向跳轉没有生效,或者新頁面本身存在問题。
過渡期的索引數字忽上忽下是常態,不建议每天盯着單個數字判断成败,拉長到以周為單位看趋势更靠谱。
几種常见寫法上的坑
- 把所有舊 URL 统一跳到首頁。這等于告诉搜尋引擎這些頁面都不重要了,原本落地頁的價值直接丢掉。
- 301 鏈太長。舊地址跳中間地址、中間地址再跳新地址,能合並就合並成一步。
- 带參數的老地址没處理。原站上带追踪參數的連結被外部引用很多,規則只覆盖了干净地址,這批就會被漏掉。
- 新舊 URL 同时可訪問。跳轉没做,只在新頁面上加了 canonical,而 canonical 是一種提示信号,不如 301 来得干脆。
什么时候算迁移告一段落
可以观察三個現象:舊 URL 的抓取基本都轉為 301 命中;新 URL 開始稳定出現在抓取日誌里;索引中舊地址明顯减少、新地址逐步被替換。這個周期没有固定天數,站点規模、抓取频率、頁面數量不同,节奏差別很大。
迁移期間不建议同时做大動作,比如一邊改 URL 一邊大改模板、一邊清理内容。變量一多,出問题时很难判断是哪一步引起的。等收錄關系稳定下来,再推進其他調整,排查成本會低很多。