先分清三種“消失”
頁面從站点上撤下来,到搜尋结果里彻底消失,中間隔着好几步。動手之前先给頁面對号入座,不同情况用不同的狀態碼,混着用只會拖慢清理节奏。
- 真刪除:内容不再需要,也不打算迁移,對應 404 或 410。
- 已迁移:内容換了地址,或者並進了別的頁面,對應 301。
- 临时下线:頁面以後還要恢复,只是暂时不想被搜到,通常用 noindex 或權限控制,而不是直接删文件。
404 和 410 的差別没有想象中那么大
404 表示资源不存在,410 表示资源被永久移除。语义上 410 更明确,搜尋引擎收到 410 後,理论上可以更快地把 URL 從索引里拿掉。但實际速度受抓取频率、站点整体质量、頁面歷史表現等影响,没有人能给出准确天數,也不必為了追求速度去硬造 410。
真正需要注意的是狀態碼要真實。有些站点把下架頁面重定向到首頁或栏目頁,或者返回一個 200 的空白頁,這在搜尋引擎看来都不是“刪除”,而是一個低质量頁面,索引清理反而更慢。這種假刪除,比老老實實返回 404 更麻烦。
什么时候该用 301
只要内容還有價值、只是換了位置,就應该用 301,把舊地址的信号传到新地址上。常见场景包括栏目改名、文章合並、路径調整。
- 只對内容确實相關的目标做 301,不要全站跳首頁。
- 避免重定向鏈條,A 跳 B、B 再跳 C,最好直接 A 跳 C。
- 迁移完成後,站内舊連結要逐步換成新地址,不要長期依赖跳轉。
跳轉到無關頁面,相当于告诉搜尋引擎“這個地址還在,只是内容變了”,舊 URL 可能長期留在索引里。
批量下架頁面的操作顺序
- 先切断站内入口:導航、列表、相關推荐、站内搜尋结果里的舊連結。
- 從 sitemap 中移除這些 URL,不再繼續提交。
- 让服務器返回正确狀態碼,404、410、301 各自归位。
- 確認没有被 robots.txt 屏蔽。屏蔽之後蜘蛛看不到狀態碼,反而無法判断頁面已经刪除。
- 需要 noindex 的頁面,必须保持可抓取,否則規則讀不到。
- 观察服務器日誌里的狀態碼分布,確認蜘蛛重新抓取时拿到的是预期结果。
几個常见誤区
- 用 robots.txt 屏蔽已删頁面,以為消失得更快,结果索引長期不更新。
- noindex 和屏蔽同时使用,两條規則互相打架。
- 頁面下架了,站内還有大量内鏈指向它,蜘蛛反复抓取却拿不到有效内容。
- 看到结果里還有舊連結就频繁改狀態碼,最後自己都说不清哪個地址返回什么。
怎么驗收處理结果
不要每天搜一次就下结论。更稳妥的方式是看三處:服務器日誌中這些 URL 最近一次被抓取时返回的狀態碼;站長工具里的索引狀態與排除原因;站内是否還有指向舊地址的入口。三處對齐之後,剩下的就是等待,索引更新本身有周期,快慢不由單方面控制。
把 sitemap 和内鏈的维護流程一起理顺,頁面上下线才不會留下太多尾巴。