站点运营中常遇到一種情况:站内頁面收錄不多,搜尋结果的图片或附件标簽下却能看到大量来自自己站点的地址。资源類 URL(图片、PDF、压缩包、音视频文件)被收錄,通常不是索引出错,因為它們本身就是可訪問的 URL,只要被蜘蛛發現,就有進入索引的可能。
先確認:到底是頁面被收錄,還是资源被收錄
排查前先把范围分清楚,否則後面的處理方向容易跑偏。
- 搜尋结果里出現的是文件地址(常见 .jpg、.png、.pdf、.zip),還是带模板的頁面地址;
- 站点地图里是否包含图片、附件條目,或整份地图指向了资源目錄;
- 服務器日誌里是否存在對资源地址的獨立抓取,而不是作為頁面渲染的一部分被請求;
- 索引报告里资源地址属于哪一類:正常收錄、重复網頁,還是已抓取未编入索引。
只有確認是资源地址獨立進入索引,才需要讨论後續處理。
资源進入索引的几條常见路径
- 目錄可浏览。资源目錄没有關閉列表展示,蜘蛛沿目錄一层层爬。
- 站点地图全量提交。地图生成时把附件、图片一並寫入,等于主動提交。
- 内鏈直接指向文件。頁面里大量連結寫的是文件地址,而非承载它的詳情頁。
- robots 只屏蔽了頁面。Disallow 寫的是頁面規則,资源路径不在其中。
- 第三方轉载。图片被外站引用,外鏈反向指向文件地址。
哪些资源可以保留
不是所有资源索引都需要清理。产品图、可下载的規范文档、對外公開的素材,被收錄本身有助于分發。真正需要收敛的通常是這几類:
- 與頁面重复的中間文件,例如原图、切片图、導出稿;
- 内部使用的附件、临时上传文件、測試素材;
- 体积大的压缩包、安装包,抓取一次就占用可观的抓取预算;
- 數量庞大且無检索價值的缩略图目錄。
收敛时的核對顺序
- 先關入口,再谈移除。目錄列表、附件頁内鏈、站点地图里的资源條目,是蜘蛛反复發現它們的来源,入口不關,移除請求會一直反复。
- 按路径统一設定响應头。對资源目錄统一返回 X-Robots-Tag: noindex,比逐個文件處理更可控。注意 noindex 需要蜘蛛能抓到文件本身才能生效,被 robots 屏蔽的 URL 不會讀取到该指令。
- 区分 robots 與 noindex 的用途。robots 控制抓取,noindex 控制索引。想阻止抓取用前者,想让已收錄地址登出用後者,两者別混用成互相抵消。
- 確認资源是否被頁面依赖。被引用的图片、脚本若被屏蔽抓取,會影响頁面渲染與用戶体驗,處理前先確認引用關系。
- 观察一段時間再判断。索引更新有周期,短期内數量不變属于正常現象,不要在几天内反复修改策略。
几個容易踩的坑
一是把 robots.txt 当成清理工具,结果资源仍然留在索引里,只是内容無法被抓取,展示的是舊快照。二是给整站加上 noindex 想顺手清理附件,反而影响了正常頁面。三是只删内鏈不做額外處理,蜘蛛仍可能通過歷史记錄和外部連結訪問。
资源類 URL 被收錄,先分清“正常分發”和“占用预算”,再决定保留還是收敛。入口、响應头、引用關系三處對齐,比逐個文件提交移除請求更省事,也更稳定。