網站改版、栏目合並、目錄調整,都會带来一批舊地址失效。如果只是把新頁面挂上去,舊連結直接返回 404,訪客和蜘蛛都會在同一個地方反复碰壁。迁移本身不复杂,麻烦的是遗漏:漏了一個栏目、漏了一種參數、漏了歷史内鏈。
先列一份舊地址清單
改版前,把現有站点里能被訪問到的地址尽量收集起来。不要只盯着導航和首頁,還要看:
- 站点地图里列出的 URL;
- 栏目頁、列表頁的分頁地址;
- 内容頁、标簽頁、归档頁;
- 站内搜尋结果頁和篩選參數頁;
- 曾经對外分享或投放過的活動地址。
如果站点有訪問日誌,可以按請求量排序,優先處理那些仍有蜘蛛和用戶訪問的舊地址。日誌里長期没有出現的地址,可以稍微降低優先級,但不代表可以直接删掉。
建立新舊地址的映射關系
每一條舊地址,都要明确它對應到哪個新地址。能一一對應的,就寫清楚;确實没有對應内容的,也要决定是跳轉到上級栏目,還是返回一個說明頁。映射表建议至少包含這几列:
- 舊 URL;
- 新 URL;
- 跳轉類型;
- 是否已上线;
- 备注,比如“已合並到某栏目”。
映射表不是寫完就結束,上线後要逐條驗證。可以用命令行工具或在线检查工具批量請求舊地址,看返回的狀態碼和最终落地頁是否符合预期。
跳轉方式要選對
常见的處理方式有 301、302 和 404。永久迁移一般用 301,让搜尋引擎知道舊地址已经搬到新地址。临时調整可以用 302,但不要長期挂着 302 当 301 用。對于确實不存在的頁面,404 是正常且必要的,比全部跳回首頁更清楚。
注意:不要把所有舊地址都 301 到首頁。大量無關舊連結指向首頁,既不利于用戶判断,也可能让搜尋引擎把首頁当成一個收容所。尽量让舊地址跳到内容最接近的新頁面。
同步更新站内入口
跳轉只是补救,站内連結才是長期入口。改版後要检查:
- 導航、面包屑、侧栏推荐是否還指向舊地址;
- 正文里的内鏈是否已经換到新地址;
- 站点地图是否只保留新地址;
- 栏目頁的分頁和篩選地址是否已经更新。
如果站点地图里還混着舊地址,蜘蛛會繼續抓取已经跳轉的連結,浪費一部分抓取预算。把站点地图重新生成一遍,確認里面的地址都是 200 狀態的新頁面。
迁移後的观察與收尾
跳轉上线後,隔一段時間看一次訪問日誌和搜尋表現。重点观察:
- 舊地址是否還在被大量請求,如果有,說明站内外還有入口没改完;
- 新地址是否開始被正常抓取,返回狀態是否稳定;
- 是否有舊地址跳轉到了错誤的新頁面,需要修正映射;
- 404 頁面是否出現在不该出現的地方,及时补上跳轉或恢复内容。
迁移不是一次点击,而是一段需要收尾的過程。把映射表、跳轉規則和日誌观察结合起来,舊地址的出口才算安排妥当。這样做不會立刻带来排名變化,但能减少迁移期間不必要的混乱,让站点结构更清楚。