搜索引擎爬虫访问网站时,第一件事就是查看根目录下的 robots 文件。这份纯文本文件是爬虫与网站之间的"访问契约",它规定了哪些页面可以被抓取、哪些区域需要绕行。合理配置 robots 文件,不仅能让后台数据保持私密,还能把有限的抓取配额用在刀刃上,让重要内容更快被收录。
robots 文件必须存放于网站根目录,比如 https://example.com/robots.txt 这样的路径才能被爬虫正常识别。文件本身是纯文本格式,每行只允许写一条指令,并且路径区分大小写。一个完整的文件通常由以下指令组成:
一个常见的配置实例如下:
User-agent: *
Disallow: /admin/
Allow: /admin/public/
Sitemap: https://example.com/sitemap.xml
这段规则表示:全站内容默认开放,但 /admin/ 路径下的文件不可抓取,其中 /admin/public/ 子目录可以例外放行。需要注意的是,Allow 指令如果遇到不识别它的爬虫,Disallow 的约束依然生效,所以不要把重要页面的放行完全寄望于 Allow 指令。
网站的运营目标不同,robots 文件的写法也会大相径庭。下面整理了三类常见的使用场景,供你参考。
内容型网站或刚刚上线的新站点,通常希望每篇文章都能被搜索引擎收录。此时只需要这样写:
User-agent: *
Disallow:
省略 Disallow 指令也是可以的,因为爬虫默认允许抓取一切内容。最常见的错误是手误写成 Disallow: /,这会导致爬虫完全无法进入站点,收录工作直接停摆。
如果你不想让某个搜索引擎收录本站,可以为该爬虫单独配置规则段:
User-agent: Bingbot
Disallow: /
这样只影响这个爬虫,其他搜索引擎的收录不受干扰。爬虫的名字需要到对应搜索引擎的官方文档中查询,常见的包括 Googlebot、Bingbot、Baiduspider 等。
企业官网的常规做法,就是隐藏管理后台、脚本目录和临时文件夹,同时保证主要页面正常抓取:
User-agent: *
Disallow: /admin/
Disallow: /includes/
Disallow: /temp/
这种写法适用于大多数场景,既保护了敏感资源,又避免爬虫在无用页面上浪费抓取配额。
在配置 robots 文件时,不少站长会犯一些看似不起眼却影响深远的错误。
在动手修改 robots 文件之前,先说两个原则。第一,改动前务必备份原文件,一旦出现问题可以快速回滚;第二,每次修改后用爬虫模拟工具检查规则是否按预期执行。具体的操作步骤可以这样走:
如果你使用的是 WordPress 等建站系统,部分 SEO 插件也提供了 robots 编辑界面,但底层逻辑和纯文件完全一致,注意不要因插件设置而覆盖手动配置。
如果规则配置不当导致整站被 Disallow: /,爬虫无法抓取任何页面,收录会逐渐消失,排名自然受到严重影响。但只要及时发现并修正规则,爬虫重新抓取后通常可以恢复收录,不会留下永久惩罚。
对于支持 Allow 指令的搜索引擎,最具体的匹配规则优先。也就是说,路径更长的规则拥有更高优先级。例如同时存在 Disallow: /admin/ 和 Allow: /admin/public/ 时,后者会因为路径更长而生效。但不同爬虫之间存在差异,稳妥做法还是让规则尽量简单明确。
不够。robots 文件只是给爬虫看的声明,并不能阻止真人访问或恶意抓取。后台安全必须依赖登录验证、IP 白名单、权限控制等手段,robots 文件只能当作第一道轻量屏障,切勿把它当作唯一防线。
robots 文件虽小,却是搜索引擎与网站打交道的第一步。配置得当,它能帮你节约抓取配额、保护敏感目录;配置失误,则可能让整站收录归零。建议你现在就检查根目录下的 robots 文件,确认规则与站点实际目录结构一致,修改前备份、修改后测试,让这份"抓取守则"真正为你的网站服务。