搜尋抓取

改版上线後,怎么把蜘蛛從舊 URL 引到新路径

站点改版常伴随 URL 结构變化,而蜘蛛手里還留着舊地址。本文讲改版前後该做的三件事:整理新舊 URL 對應關系、用跳轉和 Sitemap 把路径接上、再通過服務器日誌確認蜘蛛有没有走到新地址,並附一份可照着做的自查清單。

搜尋抓取

改版上线後,怎么把蜘蛛從舊 URL 引到新路径

改版為什么會让抓取路径中断

蜘蛛记的是 URL,不是頁面。改版时如果地址變了、栏目结构變了、内鏈没跟着換,蜘蛛顺着舊連結走下来就會撞上 404,或者停在舊的跳轉上。它不會主動猜新地址,只能靠你给出的线索重新找到路。

所以改版這件事,對抓取来说核心只有一句话:让每一條舊路径都有一個明确的出口,指向新路径。

第一步:整理新舊 URL 對應關系

在動手配置跳轉之前,先把對應關系列表拉出来,按三類归档:

  • 一對一:舊頁面對應新頁面,正常 301。
  • 多對一:若干舊頁面合並成新頁面,都指向同一個目标,注意別形成跳轉鏈。
  • 确定废弃:内容不再保留,跳到最相關的上級栏目,不要一律跳到首頁。

一律跳首頁的問题是,蜘蛛最後只拿到一個入口,原本分散在各栏目的路径全部塌缩,新頁面的發現节奏會明顯變慢。

跳轉和内鏈,先做哪個

跳轉是给已经知道舊地址的蜘蛛兜底,内鏈是让蜘蛛以後不用再走舊地址。两件事都要做,顺序上建议這样安排:

  1. 上线时同步配置 301,先保證舊地址不返回 404。
  2. 随後尽快把站内連結、導航、面包屑、Sitemap 換成新地址。
  3. 最後清理残留的舊連結,包括正文里的歷史引用、专题頁里的老入口。
跳轉鏈每多一跳,蜘蛛愿意繼續走完的概率就低一点。舊地址直接跳到最终地址,不要在中間加中轉頁。

顺手把 Sitemap 更新掉

改版後站点地图應该只保留新地址。舊地址繼續留在 Sitemap 里,等于同时递给蜘蛛两套入口,容易让它反复走跳轉。如果新地址還没完全稳定,可以先小范围提交,观察一段時間再全量更新。

怎么確認蜘蛛确實換了路径

改版後的一到两周,重点看服務器日誌里的三件事:

  • 舊地址的訪問量是否在下降,返回的狀態碼是不是 301 而不是 404;
  • 新地址是否開始出現蜘蛛訪問,且請求量逐步上升;
  • 新地址的响應時間是否稳定,別让改版顺手带来性能回退。

如果舊地址持續被大量請求、新地址迟迟没有動静,多半是内鏈還没換干净,或者跳轉配置有遗漏。

一份改版前後自查清單

  1. 新舊 URL 映射表是否完整,有没有遗漏的栏目頁和分頁地址;
  2. 舊地址返回的是 301,不是 302、JS 跳轉或 meta refresh;
  3. 跳轉是否直達最终地址,没有多級串联;
  4. 導航、面包屑、正文内鏈是否已指向新地址;
  5. Sitemap 是否只含新地址,lastmod 是否反映真實更新時間;
  6. robots.txt 是否還挡着已经废弃的舊目錄;
  7. 服務器在改版後是否出現 5xx 或超时,影响蜘蛛的重试。

改版不可能一次做到完美,但路径不能断。把舊地址的出口接好、把新地址的入口做足,剩下的交给持續观察就好。