什么是软 404
软 404 指的是服務器返回 200 OK,但頁面實际上没有可用内容。它和真正的 404 不同:真正的 404 會明确告诉蜘蛛“這個地址没有東西”,而软 404 让蜘蛛以為頁面正常,于是照常抓取、照常進入索引,只是索引里多了一個空壳。
它不會在监控里报警,因為狀態碼是正常的。問题往往在几個月後才顯現:抓取频次被這些頁面分走,重要頁面的更新反而變慢。
常见的软 404 来源
- 分類頁被清空,模板還在,只剩标题和導航。
- 篩選或排序後没有匹配结果,頁面顯示“暂無資料”但仍返回 200。
- 站内搜尋结果為空,頁面上只有一句提示。
- 商品或文章下架,詳情頁保留但正文被移除。
- 分頁參數超出范围,比如站点實际只有 3 頁,却仍能打開第 50 頁。
- 内容聚合頁里的條目被删,聚合頁没有同步更新。
怎么识別
几個可以着手的方向:
- 抽样看頁面。把日誌里被抓取最多的 URL 拉出来,随机訪問,看正文区域是否為空。
- 看頁面体量。正文缺失的頁面 HTML 通常明顯偏小,可以先按字节數排序,再人工確認。
- 對比模板。如果大量頁面的正文区域几乎一致,只差标题,很可能就是同一類软 404。
- 检查站点地图。地图里提交了、但實际没有内容的地址,值得逐個核對。
软 404 的判断标准是“内容有没有用”,不是“狀態碼對不對”。先確認頁面對用戶是否還有意义,再决定怎么處理。
處理思路
先分類,再動手,不要一刀切。
- 内容确實不存在了:返回 404。如果希望更快從索引中登出,可以用 410。
- 有對應的新地址:用 301 指過去,前提是内容确實對應,不要為了留住流量乱跳。
- 暂时缺内容,之後會补:保留 200,但要尽快补上,別让空頁面長期挂着。
- 篩選、搜尋這類程序生成的空结果頁:返回 404 更干净;如果业務上必须保留,至少加 noindex,並避免内鏈指向它們。
- 下架内容的詳情頁:如果站内還有同類内容,可以做推荐模块,让頁面仍然有阅讀價值;否則按 404 處理。
後續监控
處理完之後,建议留一個简單的例行检查:按月抽样一批正文為空的頁面,看狀態碼是否已经修正;同时观察日誌里這些 URL 的抓取频次是否下降。如果站点有内容量統計,把“正文長度低于阈值”的頁面列出来,會比逐個翻頁轻松很多。
软 404 不是能一次性清完的問题,新栏目、新模板都可能重新引入。把它当成一項常規巡检,比等到抓取配額被吃掉一半再回头處理要省事。