搜尋抓取

noindex 與抓取:被挡在索引外的 URL,蜘蛛還會不會繼續請求

noindex 管的是收錄,不是抓取。本文拆開讲 meta、HTTP 响應头和 robots.txt 三種下發方式的差別,說明被 noindex 的頁面為什么仍會被蜘蛛請求、連結還會不會被跟随,以及先屏蔽再 noindex 的常见顺序错誤。

搜尋抓取

noindex 與抓取:被挡在索引外的 URL,蜘蛛還會不會繼續請求

很多站長把 noindex 当成“让蜘蛛別来”的開關,结果設定之後發現日誌里請求照舊,就以為没生效。其實這里混了两件事:抓取是取回頁面,索引是决定要不要收進结果。noindex 只作用于後半段——它说的是“頁面可以看,但別收錄”,而不是“別来”。

抓取與索引是两個獨立环节

蜘蛛發現一個 URL,先請求回来,再根據狀態碼、頁面内容、重复關系和站点整体质量,判断是否入库。noindex 影响的是入库判断,請求本身並不會因此停止。只要這個 URL 還能從別的頁面被連結到、或者出現在 Sitemap 里,它就有繼續被抓的可能。

三種下發方式,效果並不對等

  • meta robots:寫在 HTML 的 head 里,必须先成功取回並解析頁面才看得到。如果頁面被 robots.txt 屏蔽,或者标簽要靠 JS 执行後才插入,判断就可能落空。
  • X-Robots-Tag 响應头:不依赖解析 HTML,PDF、图片、视频等非 HTML 资源同样适用,也方便按目錄批量下發,通常比 meta 更稳。
  • robots.txt 的 Disallow:這是禁止抓取,不是禁止索引。被挡住的 URL 可能因為没讀到 noindex,而以纯連結形式留在结果里。

冲突寫法很常见:响應头寫了 noindex,HTML 里却寫着 index;或者頁面被 Disallow 屏蔽,同时又指望靠 meta 打 noindex。動手前先分清楚,你是希望蜘蛛別来(robots.txt),還是希望它来但別收錄(noindex)。

被 noindex 的 URL 之後會怎样

  1. 蜘蛛仍會請求,只是不寫入索引,這些請求會占用抓取配額。
  2. 頁面上的連結通常仍會被提取和跟随,所以 noindex 不等于切断抓取路径。導航里挂着、被大量内鏈指向的頁面,照样會被反复訪問。
  3. 孤岛頁面(没有内鏈、也不在 Sitemap)打了 noindex 之後,可能很久才被重抓一次,你的設定也要等到那次抓取才真正生效。
  4. 長期不更新的 noindex 頁面,抓取频率通常會自然回落,但不會归零。

“先屏蔽再 noindex”是常见顺序错誤

為了图省事,很多人把 robots.txt 的 Disallow 和 noindex 一起上。問题在于蜘蛛讀不到頁面,就看不到 noindex,索引里的舊记錄可能長期留着,只能靠用戶点击後的移除流程慢慢處理。更稳妥的顺序是:先允许抓取並輸出 noindex,等结果里确實消失,再考虑用 robots.txt 或訪問控制层屏蔽。

哪些场景适合用 noindex

  • 站内搜尋结果頁、篩選组合頁、排序參數頁。
  • 用戶中心、打印頁、预览頁等私有或低價值頁面。
  • 尚未上线的測試頁、已经結束的临时活動頁。
  • 内容重复但需要保留連結传递路径的頁面,此时要與 canonical 一起想清楚谁優先。

取消限制之後不會立刻恢复

移除 noindex 後,頁面要先被重新抓取,再重新判断质量與重复關系,才可能回到索引。周期長短取决于站点抓取频率、頁面在站内的位置和内容更新情况。如果這段時間里它既没有内鏈、也没有任何提交线索,恢复會更慢。

排查清單:用抓取日誌確認這些 URL 是否仍在被請求;在浏览器或命令行里看真實响應头,確認 X-Robots-Tag 没有被缓存层或 CDN 改寫;用網址检查類工具看蜘蛛拿到的到底是哪一版頁面。

把 noindex 当抓取開關用,基本都會用错。它管的是“進不進库”,抓取路径该收還是得靠内鏈结构、Sitemap 和 robots.txt 規則来控制。