网站收录

页面迟迟不收录:先确认是不是被 noindex、robots 或登录墙挡住了

页面不收录时,先别急着改内容。meta robots 的 noindex、robots.txt 的 Disallow、X-Robots-Tag,以及登录墙和安全拦截,都会让页面连被抓取或进入索引的机会都没有。本文梳理三者的作用差异、容易被忽略的屏蔽情况,以及放开收录和退出索引时该遵循的操作顺序。

网站收录

页面迟迟不收录:先确认是不是被 noindex、robots 或登录墙挡住了

做收录排查时,很多人第一反应是怀疑内容质量或站点权重,但有一类原因更常见也更简单:页面被站内配置主动挡住了。这类问题不用等,翻一遍配置就能确认。

三种屏蔽方式,作用的位置不一样

先把概念理清,后面的排查会快很多。

  • robots.txt 的 Disallow:拦的是抓取。爬虫不会来取这个 URL,也就无从判断内容好坏。被 Disallow 的地址仍可能因为外部链接出现在搜索结果里,只是没有摘要。
  • meta robots 的 noindex:拦的是索引。爬虫正常抓取,读完 HTML 后决定不把页面放进索引。
  • X-Robots-Tag 响应头:作用和 noindex 类似,但写在 HTTP 头里,适合 PDF、图片、视频这类没有 head 标签的文件。

三者经常被混用,最典型的一个错误是:想让某个页面从索引里消失,却先用 robots.txt 把它屏蔽了。结果是爬虫进不来,读不到 noindex,页面在索引里留很久。

排查时容易漏掉的几种情况

  • 测试环境的 robots.txt 或 noindex 规则被一起发到了线上。
  • 模板里统一加了 noindex,某个本该收录的栏目没有单独放开。
  • 脚本在渲染后才插入 noindex 标签,服务端返回的 HTML 里看不到。
  • 页面在登录、会员、地区或特定 UA 的拦截之后,爬虫访问到的其实是登录页或 403。
  • CDN 或安全策略把搜索爬虫当成异常流量拦下了,日志里只留下拒绝记录。

推荐的排查顺序

  1. 查看页面源代码里的 meta robots,确认有没有 noindex、nofollow。
  2. 用抓取测试工具查看 HTTP 响应头,看有没有 X-Robots-Tag。
  3. 打开 robots.txt,逐条核对目标目录是否在 Disallow 里。
  4. 换不同 UA 访问一次,确认没有登录墙、地区限制或拦截。
  5. 如果站点大量使用前端渲染,检查渲染后的 DOM 是否被注入 noindex。
  6. 以上都没问题,再去考虑内容质量和索引状态本身。

想放开收录,顺序也有讲究

如果确认是屏蔽导致的,调整时按依赖关系来:

  1. 先去掉 robots.txt 里的 Disallow,让爬虫能正常访问。
  2. 再移除 meta robots 或 X-Robots-Tag 里的 noindex。
  3. 确认页面返回 200,主要内容在服务端 HTML 里就能看到。
  4. 补上站内入口链接,必要时再提交 URL 或站点地图。
如果是反过来——页面已被收录、想让它退出索引,顺序就要颠倒:先保证可抓取,再加 noindex,等页面从索引中消失后,才考虑用 robots.txt 屏蔽。

这类问题不需要什么技巧,但优先级很高:它决定后面所有优化是否还有意义。页面连被抓取或索引的资格都没有,再去调标题、改内容都是空转。花十几分钟把屏蔽层过一遍,通常比反复猜测有效得多。