改版最怕的不是頁面變丑,而是蜘蛛顺着舊路径走進一片 404。抓取路径一旦断掉,新 URL 需要重新被發現、重新排队、重新评估,整個過程可能比预想中慢。下面按改版前、改版中、改版後的顺序,梳理几個容易漏掉的环节。
一、改版前:把舊 URL 的真實清單拉出来
很多站点以為自己清楚有多少 URL,實际上日誌和 Sitemap 常常各说各话。至少要把這几份来源合並去重:
- 服務器訪問日誌里最近 30 到 90 天被蜘蛛抓過的 URL,這是蜘蛛真正记得的那部分
- Sitemap 中你主動声明過的地址
- 導航、面包屑和正文内鏈里用戶能点到的頁面
- 带參數的動態地址、分頁頁、篩選頁,這些最容易被忽略
合並之後才是迁移映射表的底稿。有自然流量、有外鏈、有轉化的頁面優先級高;纯參數頁和空壳聚合頁可以考虑收口,不必一條條搬過去。
二、映射表:一條舊 URL 對應一條新 URL
迁移的核心是一張一對一(必要时多對一)的映射表,而不是让服務器自己去猜:
- 有等價新頁面的,301 到最相關的新地址
- 已合並的栏目,301 到新栏目首頁或最接近的上級頁
- 确實下线的頁面,301 到相關頁,或返回 410
- 不确定的,先 301 到上級分類,不要直接 404
這里有個常见坑:不要制造重定向鏈。A 跳 B、B 再跳 C,等于让蜘蛛多走两跳,直接寫 A 跳 C 就好。
三、内鏈與 canonical 要跟着一起換
服務器做完 301,站内連結却還指着舊地址,蜘蛛就會持續發現舊 URL,把抓取预算花在跳轉上。需要同步處理的地方包括:
- 全站導航、面包屑、正文内鏈统一替換為新地址
- 頁面的 canonical、hreflang 以及结构化資料里的 URL 同步更新
- 图片、CSS、JS 等静態资源的引用路径一並检查,別留下破鏈
- RSS、AMP、移動端版本如果還在,單獨列一張清單
四、给蜘蛛一份新的路线图
迁移当天,Sitemap 應同步更新為新 URL 並提交;舊 Sitemap 可以保留一段時間,帮助蜘蛛發現 301 關系,之後再逐步下线。如果站点接入了 IndexNow 之類的主動通知,可以在新 URL 上线时批量推送一次,但不要反复刷,靠推送堆不出收錄。
五、迁移後的观察期看什么
抓取结构通常需要几周甚至更久才稳定下来,這段時間重点看日誌和抓取統計:
- 蜘蛛抓取的 URL 中,新地址占比是否在上升
- 301 命中的請求量是否在下降,說明站内連結已经換干净
- 404 與 5xx 的曲线有没有異常尖峰
- 舊 URL 是否還在被反复抓取,若長期不收敛,查一下是否有外部連結或站内残留指向
迁移不是一次提交動作,而是一段過渡期。舊的 301 至少保留一年,除非你能確認没有任何外部引用。
換個角度想:蜘蛛並不在意你的 URL 長什么样,它在意的是路径是否连續、是否可预期。把映射關系寫清楚、把内鏈換干净、把日誌盯住,剩下的交给時間。