运营网站,robots.txt 是绕不开的基础配置。这份放在站点根目录的纯文本文件,用几行指令就能告诉搜索引擎蜘蛛哪些路径可以抓取、哪些路径应当避开。配置得当,抓取预算能花在刀刃上,新页面收录速度明显加快;可一旦语法写错或路径映射失误,整站被降权甚至清出索引的教训并不少见。接下来直接拆解核心语法,并梳理那些容易踩雷的细节。
robots.txt 的直接作用对象是爬虫,浏览器里输入“域名/robots.txt”就能看到内容。它本质上是个引导员,负责告诉爬虫哪些路能走,但页面最终进不进索引库,它说了不算。想让某个页面彻底从搜索结果中消失,正确的做法是给页面加上 noindex 元标签。举个例子,一个页面被你在 robots.txt 里屏蔽了,可它被大量外链引用,搜索引擎依然可能收录它,只是快照内容可能取自已抓取的缓存或其他来源。
同时要清醒认识到,这份协议全凭爬虫自觉。主流搜索引擎的蜘蛛基本都遵守约定,但恶意采集脚本和不少第三方抓取工具根本不理会。涉及用户隐私、交易订单、后台管理这类敏感目录,必须叠加登录校验、IP 白名单或防火墙等硬性防护,不能把所有安全寄托在这份“君子协定”上。
robots.txt 由若干规则组构成,每个组必须以 User-agent 字段开头。所有字段统一用“名称: 值”的格式,冒号用英文半角,冒号后留一个空格是规范写法。多数爬虫对格式容错度不算低,但写得规范能避免将来出现预料外的解析问题。
这一行声明当前规则组针对哪类爬虫。只想约束 Google 的搜索蜘蛛,写 User-agent: Googlebot;想让所有搜索引擎的爬虫统一遵守,用通配符 User-agent: * 即可。你可以建多个规则组,对不同爬虫实行差异化策略,比如对谷歌放宽权限,同时收紧对必应的限制。
Disallow 声明禁止访问的路径,Allow 声明允许访问的路径,两者常搭配使用。有个容易被忽略的细节:Disallow 后面不写值,即 Disallow: 且无内容,代表清除所有限制,爬虫可抓取全站任意内容。当同一 URL 命中多条规则时,搜索引擎遵循“最长匹配优先”原则——路径越具体,优先级越高。假设同时写了 Disallow: /api/ 和 Allow: /api/public/,因为后者更具体,public 子目录下的内容会被放行。
Sitemap 指令用于声明站点地图的完整 URL,方便爬虫快速定位全站内容,通常放在文件末尾。Crawl-delay 设定爬虫抓取的间隔时间,单位是秒。这里特别提醒,Google 的爬虫不认这条指令,它更推荐在 Search Console 后台设置抓取频率来控制节奏。
第一个高频问题出在路径理解上。Disallow 后的路径是相对站点根目录的,不包含域名。比如想屏蔽后台目录,写 Disallow: /admin/ 即可,不用写完整网址。第二个坑是通配符的使用。robots.txt 支持 $ 表示路径结尾,星号 * 表示任意字符序列,但不同搜索引擎对通配符的解析程度存在差异,保守起见,能用具体路径就不用模糊匹配。第三个坑是大小写敏感性。路径是区分大小写的,/Admin/ 和 /admin/ 是两个完全不同的路径,配置前务必核对真实目录的写法。
避坑建议:写完配置后,先对照浏览器访问几个被屏蔽和放行的路径,确认返回状态码符合预期,再观察一周搜索引擎后台的抓取报告,看是否有异常拦截。另外,文件编码务必保存为 UTF-8(无 BOM),避免中文路径或注释乱码导致规则失效。
下面这份配置覆盖了常见的场景:放行所有爬虫抓取全站,但屏蔽后台、临时目录和用户个人中心,并明确声明 sitemap 位置。
User-agent: * Disallow: /admin/ Disallow: /tmp/ Disallow: /user/ Allow: /public/ Sitemap: https://www.example.com/sitemap.xml需要注意,如果站点对某个爬虫有特殊要求,比如不想让必应抓取图片资源,可以另起一组规则单独声明。配置完成后,可以用各大搜索引擎站长工具里的 robots 测试功能检查规则是否生效,不必等自然抓取验证。
不会。它只是爬虫的引导文件,不涉及服务器权限配置。但要注意,把敏感路径写进 Disallow 反而会让别人知道这些目录的位置,所以真正敏感的内容务必靠服务端权限控制,不能依赖这份文件。
取决于搜索引擎的抓取频率。一般几小时内就能被重新读取,Google 通常在数小时内完成重新抓取,其他搜索引擎可能需要一天以上。改动不大时,不用主动提交,等爬虫自然获取即可。
不遵守。主流搜索引擎的爬虫(Googlebot、Bingbot、Baiduspider)都会遵守,但恶意采集脚本、AI 训练爬虫和一些小众抓取工具不会理会这些规则。对于不想被任意抓取的资源,必须配合登录验证、IP 限制等手段。
robots.txt 的核心价值在于引导抓取预算,它管不了收录、防不了恶意采集,更不是安全工具。配置时重点把握三条:路径必须写对、要依据最长匹配原则设计 Allow 与 Disallow、敏感目录务必叠加服务端防护。每次改动后,记得用站长工具验证规则并及时观察抓取报告,发现异常尽快回滚。