搜尋抓取

站点迁移期的抓取交接:舊地址怎么收尾,新地址怎么接上

站点改版或域名切換後,蜘蛛手里的舊地址會集体失效。本文按映射表、跳轉規則、Sitemap 與内鏈的顺序,梳理抓取交接期该怎么安排:先让新地址在站内可走,再處理舊路径的狀態碼與收尾,最後用服務器日誌確認新舊两套结构是否顺利接上。

搜尋抓取

站点迁移期的抓取交接:舊地址怎么收尾,新地址怎么接上

站点改版、域名切換、目錄结构調整,都會让蜘蛛手里那套舊地址一下子失效。抓取交接做得顺,舊的抓取路径會自然收尾,新的路径很快接上;做得糙,就會出現一批長期空轉的 404,新地址又迟迟没被發現。

交接期到底發生了什么

對蜘蛛来说,一次迁移包含两件事:一是它已经抓過的舊 URL 還能不能走到内容,二是它還没抓過的新 URL 怎么被發現。前者靠跳轉和狀態碼,後者靠 Sitemap 和内鏈。這两件事如果不在同一個時間窗口里對齐,抓取就會出現一段空档。

先做一份能核對的映射表

改版方案定下来之後,建议先輸出一份“舊 URL 到新 URL”的對照表,作為後面所有動作的依據。

  • 粒度至少到目錄和模板級,重点頁面逐條列,避免只寫“栏目整体迁移”。
  • 标出哪些頁面确定不再存在,它們應该返回 410 或 404,而不是硬指到一個不相關的頁面。
  • 检查映射结果里有没有多個舊地址指向同一個新地址,這種情况容易让新頁面的入口顯得混乱。
  • 把映射表交给開發和运维各一份,跳轉規則、Sitemap 生成、内鏈替換都以它為准。

切換节奏:別让新舊地址長期並存

常见的做法是舊地址全部 301、新地址同时上线,再逐步清理。需要注意的是別堆叠跳轉:舊 URL 到中間頁再到新 URL 這種两跳,比直接一跳多耗一次請求。跳轉鏈越長,蜘蛛走完的成本越高,留给其他頁面的抓取額度就越少。

如果分批次上线,尽量按目錄分批,別让同一批連結在几天内反复改變目标地址。

Sitemap 與内鏈的切換顺序

  1. 先让新地址在站内可点,導航、面包屑、列表頁都指向新结构。
  2. 再把 Sitemap 換成新地址版本,舊版本的 URL 清單不要長期保留。
  3. 然後確認 robots.txt 没有挡住新目錄,尤其是改版时新加上的路径前缀。
  4. 最後處理舊地址的跳轉與下线,观察一段時間再决定是否撤掉跳轉。

顺序反了會很麻烦:Sitemap 已经交了新地址,站内却還全是舊連結,蜘蛛顺着内鏈走回舊路径,又要多走一遍跳轉。

舊路径的收尾

跳轉保留多久没有统一答案,通常取决于舊連結在站外的引用量和歷史訪問情况。可以观察日誌里舊路径的抓取频次,等它降到很低、且新路径的抓取量稳定之後,再考虑收尾。

判断标准不是“過了多少天”,而是舊地址的請求量是否已经趋近于零、新地址是否已经稳定被抓。

用日誌確認交接完成

  • 新地址的抓取量是否在几天内出現明顯增長。
  • 舊地址返回的 301 是否占绝大多數,而不是大量 404。
  • 是否還有一批舊地址仍返回 200,也就是新舊两套内容同时在线。
  • 抓取集中在哪些目錄,是否和 Sitemap、導航里的重点一致。

交接期不用追求一次到位,重点是別让蜘蛛在两套结构之間反复来回。舊路径安静收尾、新路径稳定被走通,這次迁移在抓取這一环就算過關了。