網站收錄

頁面已刪除,索引里還留着舊地址:狀態碼、内鏈與移除請求的核對顺序

頁面刪除或下线之後,搜尋里仍能搜到舊地址,点進去顯示 404。這通常不是收錄異常,而是刪除时没有给出明确信号。本文按迁移與刪除的区分、狀態碼確認、robots 放行、站内連結與 sitemap 清理、移除工具的使用顺序,梳理一套可执行的核對流程。

網站收錄

頁面已刪除,索引里還留着舊地址:狀態碼、内鏈與移除請求的核對顺序

把一批頁面下线或刪除之後,過一段時間再搜站点,仍然能看到那些舊地址,点進去顯示 404。這個現象很常见,但先別急着把它当成收錄異常——問题往往不在“為什么還收錄”,而在“刪除的方式有没有给蜘蛛一個明确信号”。

先分清:這是刪除,還是迁移

很多“删了還在”的情况,其實是頁面被搬到了新地址,只是舊地址没有做 301。蜘蛛手里還留着舊记錄,用戶点進去却是 404,這就属于迁移没做完。判断方式很简單:這段内容站里還有没有?如果還有,就找新地址补一條 301;如果确實不要了,再往下看。

第一步:確認舊地址返回的狀態碼

  • 200:頁面還在,或者落到了软 404 頁面,返回正常但内容不存在,蜘蛛會当作有效頁繼續保留。
  • 301:指向新地址,属于正常迁移,索引會随抓取逐步更新。
  • 302 / 307:临时跳轉,蜘蛛可能長期保留舊地址,如果是永久變更建议換成 301。
  • 404:内容不存在,會被逐步移除,速度取决于该路径的抓取频率。
  • 410:明确告知已永久刪除,通常比 404 處理得干净一些。
  • 403 / 500:拒绝訪問或服務器出错,蜘蛛無法確認頁面狀態,舊记錄反而容易停住不動。

要注意的是,大量頁面同时變成 404 和單頁刪除並不一样。前者更像整站調整,蜘蛛的處理节奏也會不同。

第二步:確認蜘蛛能不能拿到這個狀態碼

一個容易被忽略的点:如果這個路径在 robots.txt 里被屏蔽了,蜘蛛拿不到狀態碼,就無法確認頁面已经刪除,索引里的舊地址會長期不動。所以刪除頁面时,先确保對應路径是放行的,等收錄移除之後,再考虑是否屏蔽。

同理,登入墙、地区限制、CDN 規則拦截,也會造成“蜘蛛看不到真實狀態”的情况。排查时不妨用抓取工具的模拟訪問,看看返回的是不是和用戶看到的一致。

第三步:核對站内還有谁指向舊地址

  1. 站内連結:導航、面包屑、相關推荐、正文里如果仍指向舊地址,蜘蛛會持續發現它。
  2. sitemap:文件里如果還列着已刪除的地址,等于主動把失效 URL 再交一遍。
  3. 跳轉鏈:A 指向舊地址、舊地址再指向新地址,鏈條越長越难被處理,能直连就直连。
  4. 外鏈:這部分不好控制,可以作為“移除慢”的合理解释,不必為此反复提交。

第四步:索引本身要不要主動處理

如果受影响頁面數量多,可以用搜尋平台的移除工具做临时隐藏。但要清楚它的性质:它是短期措施,不是永久刪除。真正的移除仍然取决于蜘蛛重新抓取时拿到的狀態碼。

常见的错誤做法包括:把所有失效頁 301 到首頁、在 404 頁上加 noindex、反复提交同一條移除請求。前两種會让蜘蛛拿到自相矛盾的信号,第三種基本没有額外收益。

移除請求解决的是“暂时別顯示”,狀態碼解决的是“這個地址已经不存在”。两件事要分開做。

什么时候可以不用管

如果只是十几個老頁面慢慢消失,站点整体收錄和流量也没受影响,通常不值得投入太多精力,把時間放在仍有價值的頁面和站内结构上更划算。真正需要認真處理的,是批量刪除、整站改版、URL 结构大改這几類情况,因為分散的舊地址會形成持續的噪音。

一個简單的核對顺序

  1. 内容還在吗?在的话,做 301 指向新地址。
  2. 确實刪除,確認返回 404 或 410,而不是 200 软 404。
  3. 路径是否被 robots 屏蔽?屏蔽了就先放行。
  4. 站内連結與 sitemap 是否仍指向舊地址?清理掉。
  5. 數量多、影响大,用移除工具做临时處理,然後等待重新抓取。
  6. 過一段時間复查:舊地址是否仍在索引里,狀態碼是否稳定。

收錄的移除和收錄的建立一样,都要经過發現、抓取、判断三個阶段。刪除頁面时给出的信号越明确,收敛越快;信号模糊或者自相矛盾,舊记錄就會在原地停很久。