Robots.txt 是网站与搜索引擎爬虫之间的一份约定文件,放在服务器根目录,用来告诉爬虫哪些页面可以抓取、哪些应该忽略。配置得当,可以保护后台数据和隐私内容,同时让重要页面顺利被收录;配置失误,则可能导致整站收录异常或关键页面无法出现在搜索结果中。下面从语法到实操,逐一拆解配置的关键点。
Robots.txt 由若干规则组构成,每组之间用空行隔开。每组规则的核心指令包括 User-agent、Disallow 和 Allow,它们共同决定了爬虫能访问哪些路径。
写规则时要注意路径匹配区分大小写,例如 /Admin 和 /admin 会被视为两个完全不同的地址。此外,/private 这类写法会匹配该前缀下的所有路径,比如 /private_page,如果只想屏蔽目录,建议写成 /private/ 以明确范围。
一个基础配置示例:
User-agent: *
Disallow: /admin/
Allow: /admin/public/
为了让配置既能守住隐私数据,又不妨碍正常索引,可以按以下步骤操作:
上线之后,建议在站长平台里用抓取诊断工具,输入一个具体 URL 测试,看返回的结果是否符合预期。这样做能快速发现规则冲突或路径拼写错误。
实际运维中,下面几类问题出现频率最高,需要特别留意:
一是文件放错位置。robots.txt 必须位于域名解析的根目录,例如 example.com/robots.txt。如果误放到某个子目录,爬虫根本无法读取,所有规则形同虚设。
二是规则互相冲突。比如对同一个路径既写 Disallow 又写 Allow,爬虫会按自身逻辑选择最长的匹配规则,结果可能与预期相反。建议每个目录只定义一套明确的规则,不要重复表述。
三是过度屏蔽静态资源。有些人为了避免资源被索引,把 CSS、JS 或图片目录全部屏蔽,但这样可能拖慢页面渲染速度评估,甚至影响搜索引擎对页面质量的判断。对静态资源,一般不建议在 robots.txt 里做限制。
四是忽略大小写问题。URL 路径的大小写敏感,写规则前最好先确认实际目录的书写形式,避免因大小写不匹配导致规则失效。
配置完成后,验证和持续维护是保证效果的关键。常用的验证手段包括:
判断标准很简单:把每个重要页面的 URL 逐一测试,确认返回状态为"允许抓取";把隐私路径测试后,确认显示"禁止抓取"。两次结果都符合预期,说明配置基本到位。
值得提醒的是,robots.txt 不是安全屏障。某些技术能力较强的爬虫可能无视规则,真正敏感的数据还需要通过登录验证或 IP 白名单等方式保护,不能只依赖这一份文件。
搜索引擎的下一次抓取时会重新读取该文件,具体时间取决于爬虫的访问频率。通常几分钟到几天不等,重要页面可以通过站长工具手动提交抓取请求来加速。
可以,只要写上 User-agent: * 和 Disallow: /,就能屏蔽所有爬虫的抓取。但要注意,如果页面已被其他网站引用,仍然可能出现在搜索结果中,只是内容摘要无法抓取。如果想彻底移除已有索引,还需要配合站长工具中的移除请求。
可以,robots.txt 并非强制要求。如果不想提供这份文件,不创建即可,爬虫会默认抓取所有可访问的页面。反之,一旦创建了文件,爬虫就会遵循其中的规则来行事。
Robots.txt 的配置核心在于明确边界:既不让隐私内容暴露,又不阻碍有价值页面的收录。建议建立一份目录清单,定期对照实际更新规则;每次变更后,都到站长工具里做一次抓取测试。通过持续维护,这份文件才能真正发挥应有的作用。