搜索引擎爬虫访问任何网站时,都会先检查根目录下的 robots 文件。这份纯文本规则就像网站给爬虫的"访问须知",明确划分哪些页面欢迎收录、哪些目录必须回避。配置得当的 robots 文件不仅能保护后台敏感数据,还能把有限的抓取预算集中到重要页面,对网站 SEO 表现有直接帮助。
robots 文件必须存放在网站根目录,比如 https://example.com/robots.txt 才能被爬虫正确读取。文件本身是纯文本格式,每条指令单独占一行,路径区分大小写,这点经常被忽视。
一份标准文件通常包含四类指令:
看一个实际配置示例:
User-agent: *
Disallow: /admin/
Allow: /admin/public/
Sitemap: https://example.com/sitemap.xml
这段配置允许抓取全站,但排除 /admin/ 目录,其中 /admin/public/ 子目录被单独放行。需要特别留意的是,Allow 指令不是所有搜索引擎都认识,某些爬虫会直接忽略它,此时 Disallow 的限制仍然生效。
不同站点的运营目标差异很大,robots 文件的配置思路也各不相同。下面介绍三种最常见的场景与对应写法。
内容型网站或新上线站点,通常希望所有文章都能被索引。此时只需一行声明:
User-agent: *
Disallow:
Disallow 留空表示不限制任何路径,也可以直接省略这一行,因为爬虫的默认行为就是允许全站抓取。新手最容易犯的错误是写成 Disallow: /,这会让爬虫完全进不了网站,收录直接归零。
如果不想让某个搜索引擎收录内容,可以为它单独建一个规则段:
User-agent: Baiduspider
Disallow: /
这样其他爬虫完全不受影响。爬虫的具体名称需要查询各搜索引擎的官方文档,常见的有 Googlebot、Bingbot、Baiduspider 等,切勿凭感觉拼写。
企业官网的通用做法是隐藏后台管理系统、脚本目录和临时文件夹,同时确保主页面正常被抓取:
User-agent: *
Disallow: /wp-admin/
Disallow: /includes/
Disallow: /temp/
Allow: /
这里先阻塞三个敏感目录,再用 Allow: / 放行全站,注意 Allow 和 Disallow 的优先级在某些爬虫中可能与书写顺序有关,建议把特定目录的 Disallow 写在前面。
配置 robots 文件时,以下几点错误出现频率最高,值得提前规避。
上传或修改 robots 文件后,需要确认规则是否按预期生效。
在 Google 等支持 Allow 指令的搜索引擎中,路径匹配长度更长的那条规则优先。例如 /admin/ 和 /admin/public/ 同时出现时,后者将生效。但对于不识别 Allow 的爬虫,Disallow 仍然保持约束力。
不能。robots 只决定"是否被抓取",不影响已收录页面的排名权重。但若误屏蔽了重要页面,会导致页面从索引中移除,变相削弱站点流量。
建议至少包含 Sitemap 指令,帮助爬虫更快发现全部页面。同时也确认不要误写 Disallow: /,新站抓取配额本身有限,错误配置会浪费宝贵的首次抓取机会。
robots 文件虽然只有几行文本,却直接影响搜索引擎对网站的收录范围与效率。建议按"先放开全站、再逐段屏蔽敏感目录"的思路配置,修改后用测试工具验证,并在站长后台关注抓取量的异常波动。配置完成后至少观察一周,确认无误后再进行后续优化。记得,任何敏感数据都要靠服务端权限控制,robots 文件只是锦上添花的效率工具。