網站收錄

PDF、图片和附件被單獨收錄:非 HTML 资源的索引核對顺序

做收錄核對时,很多人只看 HTML 頁面,其實 PDF、图片、Office 文档同样可能被單獨索引。本文按“先確認资源類型與可達性,再判断唯一性和公開性,最後選擇處理手段”的顺序,說明 noindex、robots.txt、canonical 头與直接下线的区別,並列出复查时容易忽略的细节。

網站收錄

PDF、图片和附件被單獨收錄:非 HTML 资源的索引核對顺序

很多人做收錄核對时只盯着 HTML 頁面,實际在搜尋结果的索引里,PDF、图片、Office 文档、压缩包這類非 HTML 资源同样可能單獨出現。它不一定是坏事:一份产品手册、一張規格图被搜到,本身就是流量入口。問题在于,当同一份文件存在多個地址、舊版本没撤干净、或者附件目錄被整站抓取时,索引里就會堆积大量低價值或重复的资源 URL。

先確認:被收錄的到底是什么

在做任何處理之前,先把“我以為”換成“记錄里是什么”。

  • 在搜尋结果里用 site:你的域名 filetype:pdf(或對應扩展名)看有多少资源被單獨展示;
  • 在抓取日誌里篩選静態资源請求,看哪些文件的請求量異常高;
  • 用 curl -I 或浏览器開發者工具看响應头,確認 Content-Type 與狀態碼,別把 200 当成正常頁面;
  • 確認這個 URL 是獨立可訪問的,還是只在某個 HTML 頁面里以内嵌资源的形式出現。两者在索引里的表現完全不同。

這里要区分一件事:被抓取不等于被收錄。日誌里出現請求,只說明蜘蛛来過;是否進入索引,要看该 URL 能否以獨立结果被检索到。

非 HTML 资源的核對顺序

  1. 可達性:狀態碼是否 200,是否跟随重定向後落到另一個地址。
  2. 唯一性:同一份文件是否存在多個路径,比如上传目錄、缩略图目錄、带時間戳的舊版本。
  3. 獨立性:该资源是否有獨立检索價值,還是只是頁面里的一張配图、一個下载附件。
  4. 公開性:是否本就不该被外部訪問,例如内部报價單、測試文档。
  5. 處理方式:按上面的判断,分別選擇保留、合並、阻止抓取或直接下线。

顺序不要颠倒。比如還没確認资源是否重复,就先在 robots.txt 里屏蔽整個上传目錄,结果可能是:新文件也抓不到,舊文件因為早已被索引,短期内仍然存在。

几種處理手段的区別

  • 保留:资源确實有检索價值时,给它一個規范的直達地址,並让相關 HTML 頁面連結過去;文件本身尽量精简、命名清晰。
  • X-Robots-Tag: noindex:寫在 HTTP 响應头里,可以阻止该资源進入索引,同时不阻断抓取,适合“能下载但不想被搜到”的文件。
  • robots.txt 屏蔽:阻止的是抓取。對尚未被抓到的资源有效,對已经進入索引的 URL 未必能立刻移除,而且屏蔽後核對會更麻烦。
  • HTTP 头里的 Link rel="canonical":指向對應的 HTML 版本,让资源頁與内容頁的索引归属更清晰,适合“同一内容既有網頁又有附件”的场景。
  • Content-Disposition: attachment:只是改變浏览器的打開方式,不改變索引狀態。
  • 直接下线:不该公開的文件應当從服務器移除並做權限控制,返回 404 或 410,而不是只靠規則遮住。
規則只能影响搜尋引擎的行為,不能替代權限管理。敏感文件该删就删,不要指望 noindex 兜底。

容易被忽略的几個点

  • 同一份 PDF 被多次上传,文件名不同、内容相同,容易形成跨 URL 重复;
  • 图片搜尋结果與網頁搜尋结果的口径不同,图片被收錄不等于頁面被收錄;
  • 站点地图里只放頁面 URL,不要把附件、缩略图一股脑塞進去,否則等于主動扩大發現面;
  • 附件所在目錄如果允许列目錄,蜘蛛和普通訪客都能顺着列表翻到大量文件。

改完之後怎么复查

規則上线後,先看日誌里對應目錄的請求是否出現變化,再隔一段時間看這些 URL 是否還以獨立结果出現。索引狀態的更新有滞後,用一两天就下结论容易誤判。把每次調整的時間点、改了什么、观察到的结果记下来,下一次遇到同類問题时就有參照,而不是每次重新猜。