站点运营

站点运营:软 404 與空壳頁面自查,別让没内容的頁面也返回 200

搜尋無结果、篩選為空、内容下线後仍返回 200 的頁面,都属于软 404。它們看起来正常,却没有實质内容,會持續消耗抓取预算。這篇文章梳理软 404 的常见来源、從日誌和抓取工具中识別它們的方法,以及對應的狀態碼與入口處理思路。

站点运营

站点运营:软 404 與空壳頁面自查,別让没内容的頁面也返回 200

很多站点在清理内容时,會把下线的頁面直接删掉,却没有同步調整返回狀態碼;也有些頁面本身就是空壳,比如搜尋無结果、篩選後没有匹配商品、栏目被清空但模板照常渲染。這些頁面都會以 200 的狀態返回给訪客和蜘蛛,看起来“正常”,實际没有任何有效内容,通常被称為软 404。

软 404 的常见来源

软 404 很少是刻意配置出来的,多數是流程或模板的副产品。

  • 搜尋與篩選頁:用戶輸入的關鍵詞没有结果,頁面只顯示一句“暂無資料”,URL 仍然可訪問且返回 200。
  • 分頁越界:列表只有 3 頁,第 4 頁仍然能打開,只是空白列表。
  • 内容下线:商品下架、文章撤回,但 URL 保留着,模板輸出“该内容不存在”的提示。
  • 栏目被清空:栏目頁還挂在導航里,里面一條内容都没有。
  • 模板渲染異常:資料取不到,頁面只剩頁头頁脚,正文区域為空。

怎么把它們找出来

靠人工点開每一條連結不現實,可以從日誌和抽样两方面入手。

  1. 翻抓取日誌,筛出狀態碼 200 但响應体积明顯偏小的 URL,這類往往是空壳頁。
  2. 用站内爬取工具抓一遍全站,按正文文字長度排序,看最短的那一批是什么頁面。
  3. 把搜尋、篩選、排序等參數组合起来訪問几次,观察無结果时返回的狀態碼和頁面内容。
  4. 抽查已下线的舊内容,確認返回的是 410、404,還是仍然 200。
  5. 检查栏目頁和聚合頁,確認没有内容时系統给出的實际响應是什么。
判断标准可以简單一点:這個頁面拿掉頁头、頁脚和導航之後,還剩多少對訪客有用的信息?如果几乎没有,就不该用 200 告诉蜘蛛它是一條正常内容頁。

放任不管的代價

软 404 消耗的是抓取预算。蜘蛛每次過来都要重新下载、解析一個没有信息的頁面,真正需要更新的内容反而可能被排在後面。對訪客来说,点進来看到空白頁,体驗同样不好。如果這類頁面數量很多,整站的内容质量判断也可能被拖累。

處理思路

  1. 确定下线的内容返回 404 或 410,並在站内相關位置撤掉入口連結,不必為了保住流量硬撑一個空頁面。
  2. 無结果的搜尋頁给出明确提示,同时加上 noindex,避免被大量收錄。
  3. 篩選组合頁如果無结果,返回 404 或做跳轉,不要持續生成無限的空壳 URL。
  4. 分頁越界直接返回 404,避免蜘蛛顺着“下一頁”一直翻到空列表。
  5. 模板異常属于技術問题,應该修資料源和渲染逻辑,而不是让頁面静默輸出空白。
  6. 暂时缺内容的栏目可以先從導航中撤下入口,等内容补齐再放回去。

把检查變成日常動作

  • 内容上下线时同步確認狀態碼和入口連結,別只删資料库记錄。
  • 模板改動後抽样几個邊界情况:無資料、超范围、參數非法。
  • 定期看日誌里响應体积最小的那批 URL,發現異常及时處理。

這些工作做起来不复杂,难的是持續。把狀態碼和頁面實际内容對應起来,蜘蛛拿到的信息才和訪客看到的一致。