企业看到测试页出现在搜索结果里,第一反应常是把目录写进robots.txt。这样搜索引擎无法重新抓取页面上的noindex,反而可能长期保留一个没有摘要的URL。
使用robots.txt前先明确目标:是减少抓取、保护服务器资源,还是不希望页面被索引。两个问题需要不同工具。
01 robots.txt控制抓取,不保证不索引
Disallow告诉遵守协议的爬虫不要请求路径,但如果URL被其他页面链接,搜索引擎仍可能知道它存在。
需要从搜索结果移除的页面,通常应允许抓取并返回noindex、404/410或权限控制。

02 文件位置和语法必须准确
robots.txt位于站点根目录,按User-agent分组配置Disallow和Allow。路径大小写和域名/子域名范围需要注意。
错误的斜杠或通配可能意外屏蔽全站CSS、图片或核心页面。
常见目标与正确工具
| 目标 | 优先方法 | 不要这样做 |
|---|---|---|
| 阻止后台或爬虫陷阱抓取 | robots.txt + 认证/权限 | 只靠robots保护敏感数据 |
| 页面不进入搜索结果 | noindex或正确状态码 | 先Disallow再期待noindex生效 |
| 删除不存在内容 | 404或410 | 全部301到首页 |
| 合并重复URL | canonical和内部链接统一 | 用robots隐藏重复却保留信号 |
| 提交站点地图 | robots中声明Sitemap或Search Console | 把Sitemap路径Disallow |
| 保护私人文件 | 登录、访问控制和存储权限 | 认为爬虫规则等于安全 |

03 不要屏蔽渲染所需资源
搜索引擎需要CSS、JavaScript和图片理解页面。历史上为“节省抓取”屏蔽资源,可能影响渲染。
每次改规则后检查公开页面是否仍能完整抓取。
04 参数与搜索页要先解决结构
无限筛选和站内搜索可能产生大量URL。robots可减少某些抓取,但应同时规范链接、参数、canonical和Sitemap。
不能把结构问题全部交给一条Disallow。

05 敏感内容必须使用真正权限
robots.txt是公开文件,任何人都能查看被屏蔽路径。登录后台、客户资料、测试数据和备份必须通过认证与服务器权限保护。
不要把敏感URL写进去当作隐藏清单。
06 发布前测试,变更后监测
使用搜索引擎工具或抓取测试验证规则,保留版本和变更原因。
网站迁移、CMS更新和临时环境上线时重点检查,避免一条全站Disallow被带到生产。
常见问题
robots.txt能保护后台密码吗?
不能,它只是自愿遵守的抓取协议,后台必须使用登录和权限。
Disallow后页面多久会消失?
不一定会消失。若目标是不索引,应使用noindex或状态码,并让爬虫能处理。
可以在robots.txt里写多个Sitemap吗?
可以声明多个站点地图,确保URL可访问且内容正确。
测试站应该怎么防收录?
使用访问认证最稳妥,也可配合noindex;不要只依赖robots。
修改robots会立刻生效吗?
爬虫会定期重新获取,时间不固定,修改后应监测抓取行为。