為什么没有内容的頁面也會進索引
站点的 URL 數量往往遠多于有實际内容的頁面。篩選條件组合後没有结果、分類下商品暂时下架、用戶中心未登入狀態、站内搜尋為空、分頁超出范围——這些地址通常都返回 200 狀態碼,頁面骨架也完整,只是正文区域是空的。對搜尋引擎来说,它看到的是一個能正常打開的頁面,而不是错誤頁。
問题在于,這些地址一旦被内鏈、站点地图或外部連結带到蜘蛛面前,就具备了被發現的條件。抓取並不区分“有内容”和“没内容”,它只负责取回 HTML;是否值得放進索引,是後面的判断。
先把“空”和“错”区分開
- 真正的空頁面:模板正常渲染,只是列表或字段没有資料,狀態碼為 200。
- 软 404:内容實际不存在,却仍返回 200,頁面里可能還带着“没有找到”之類的提示语。
- 硬 404 或 410:明确告知资源不存在,通常不會被長期保留在索引里。
很多站点的問题是大量頁面停留在前两種之間,既没有内容,也没有给出一個明确的處理信号。
從入口到索引的核對顺序
- 看狀態碼是否诚實。如果资源确實不存在,返回 404 或 410 比返回 200 再配一句提示更清晰。不要為了頁面上好看,把所有空狀態都做成 200。
- 看模板占比。正文只有几十個字,其余全是導航、推荐位、頁脚,這種頁面在质量评估里很难被当作有價值的落地頁。
- 看内鏈與入口。空頁面被收錄,往往不是搜尋引擎主動找来的,而是站内某個列表、篩選控件或分頁把地址暴露了出去。检查這些位置是否會輸出無结果的連結。
- 看站点地图與提交清單。sitemap 里是否混進了這些地址?如果清單本身在推荐空頁面,抓取方向會被持續引導過去。
- 看是否有明确的排除指令。确定要保留但不希望被索引的頁面,可以用 noindex;确實不存在的頁面,用狀態碼而不是 noindex。
- 看索引里還留着什么。已经進入索引的地址,即便頁面改成了 404,也要等重新抓取後才會更新,必要时可以提交移除請求加速處理。
收敛比清理更重要
清理一個被收錄的空頁面成本不高,难的是不断产生新的空頁面。更有效的做法是在生成連結和 URL 的环节就做收敛:篩選與排序组合指向同一個規范地址,分頁超出范围时返回 404,库存為空的詳情頁做合並或跳轉到上級分類,而不是保留一個空壳。
與其事後從索引里一個個清理,不如让空頁面從一開始就不被生成、不被連結。
哪些空頁面可以保留
不是所有空頁面都要消灭。有些頁面本身是流程的一部分,比如购物车、訂單確認頁,它們對用戶有用,但不适合出現在搜尋结果里。這類頁面可以用 noindex 明确标注,同时避免被站点地图收錄。判断标准可以很简單:這個地址如果出現在搜尋结果中,對搜尋的人有没有帮助。答案是否定的,就考虑排除。
整体思路可以归纳成一句话:先让狀態碼说真话,再让内鏈和清單不推廣空地址,最後才谈索引里的清理。顺序反了,清理永遠赶不上新增。