robots.txt 是网站根目录下的一个纯文本文件,用于向 Googlebot、Bingbot 等网络爬虫声明哪些链接可以访问、哪些应当跳过。合理配置这份文件,既能避免后台页面和重复内容被收录,也能让搜索引擎把精力集中在真正重要的页面上。本文直接梳理官方语法、典型配置示例以及容易踩的坑。
robots.txt 必须存放在网站根目录,例如 https://yourdomain.com/robots.txt。文件内容由若干条记录组成,每条记录以 User-agent 行开头,随后是该爬虫对应的规则。字段名不区分大小写,但路径值严格区分大小写。
需要留意的是,robots.txt 只负责告知爬虫规则,并非强制访问控制。如果包含敏感信息,务必同时通过登录验证或服务器权限加以保护,否则仍可能被直接访问。
当网站处于开发调试或临时维护状态时,可禁止所有搜索引擎抓取。该配置会让页面在搜索结果中逐步消失,恢复后需要重新提交收录。
User-agent: *
Disallow: /
如果你只希望 Googlebot 抓取网站,而禁止其他爬虫,需要把特定爬虫的规则写在通配符规则之前,因为匹配顺序靠前的规则会优先生效。
User-agent: Googlebot
Disallow:
User-agent: *
Disallow: /
这里 Disallow 后面留空表示不禁止任何路径,即允许 Googlebot 抓取全站资源。
后台管理路径、重复内容页面以及体积较大的文件,通常没有必要让爬虫耗费抓取配额。利用通配符和结束符可以精准控制范围。
User-agent: *
Disallow: /admin/
Disallow: /*.pdf$
星号代表任意字符序列,美元符号表示匹配到此处结束。上述示例中 /*.pdf$ 只会匹配以 .pdf 结尾的链接,不会误伤包含 pdf 字样的目录。
当整个目录被禁止后,如果想保留其中某个文件被收录,可以借助 Allow 指令实现例外。爬虫在匹配时会优先参考更具体的路径规则。
User-agent: *
Disallow: /private/
Allow: /private/sample.html
该配置适用于产品手册、白皮书等有价值的内容存放在受保护目录中的情况。搭建完成后,建议用 Google Search Console 的 robots.txt 测试工具进行验证,确认规则实际生效。
不少站点在编写 robots.txt 时会出现格式问题,导致整个文件失效或误伤正常页面。以下几点需要格外注意。
另外,移除规则后,爬虫不会立刻重新抓取所有页面。可以主动在站长工具中提交需要恢复收录的链接,加快处理进度。
robots.txt 中可以直接声明站点地图地址,帮助爬虫更快发现重要内容。该行通常放在文件末尾,且需要写明完整的 URL。
User-agent: *
Disallow: /tmp/
Sitemap: https://yourdomain.com/sitemap.xml
对于大型站点,建议同时提交多个 sitemap 文件,并留意抓取配额的使用情况。对于小型网站,sitemap 和 robots.txt 的配合能明显提升新页面的收录速度。需要注意的是,Sitemap 指令并不属于标准 robots.txt 规范,但已被主流搜索引擎普遍支持。
可能影响。如果误屏蔽了核心页面或整个目录,搜索引擎将无法抓取这些内容,收录量下降后自然会影响排名。不过 robots.txt 本身不会直接导致惩罚,只是限制了抓取和收录范围。
Disallow 是阻止爬虫抓取,页面通常无法被索引,但链接上的锚文本等信息可能仍会被识别;noindex 是允许抓取但明确要求不收录。对于不想展示给用户的页面,如果希望保留抓取以跟踪链接,可使用 noindex。
视爬虫的抓取频率而定,通常从几分钟到几天不等。你可以通过搜索引擎的站长工具主动请求验证或抓取,催促爬虫尽快读取最新文件。
编写 robots.txt 的核心原则是简单、明确、可验证。先梳理出不需要抓取的路径和文件类型,再对照通配符语法逐条书写,最后通过官方工具检查匹配结果。配置完成后,定期查看抓取统计和收录报告,根据实际情况微调规则,才能持续保持搜索引擎对网站的收录效率。