robots.txt 配置指南:核心语法与实战用法解析

📍 WDQWDWQD987AAAAA:216.73.217.130
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /742498464754.html
📄

robots.txt 是站长放在网站根目录下的一个纯文本文件,用来向搜索引擎爬虫传达收录规则:哪些路径可以进入,哪些路径应当跳过。它不能提供安全屏障,但是在保护内部目录、节省抓取配额、降低服务器压力等方面有明显作用。无论网站大小,掌握这套配置逻辑都是运营的必修课。

1. 掌握 robots.txt 的三个基础指令

这份文件的语法并不复杂,核心就是几个固定命令的组合。先理解下面三个概念,多数配置需求就能直接搭建。

避坑提醒:每个 User-agent 分组后面必须至少带一条 Disallow 或 Allow 语句,否则该分组形同虚设。同时要记住,这个文件只对搜索爬虫有约束力,真实访客通过浏览器访问不受影响,涉及隐私或机密的内容绝不能依赖它来保护。

2. 创建并部署你的第一个 robots.txt

无论站点规模如何,建议从一份精简规范的初始版本开始。下面这个模板可以直接作为底稿参考。

  1. 新建一个 txt 文本文件,写入以下内容:
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Sitemap: https://www.yoursite.com/sitemap.xml
  1. 将示例域名位置替换为你自己的真实域名,并仔细核对目录路径是否正确。
  2. 将文件命名为 robots.txt,通过 FTP 工具或主机面板的文件管理功能,把它上传到网站的根目录。

检查方式与典型错误:上传后,在浏览器中直接访问 你的域名/robots.txt,如果能原样显示文件内容,就说明部署成功。新手最常犯的错误是误写 Disallow: /,这会把整站对搜索引擎彻底关闭。另外,路径末尾的斜杠漏写也会导致规则失效,比如 Disallow: /tmp 并不能覆盖 /tmp/ 目录内的全部内容。

3. 助 Allow 实现局部精准开放

当站内目录层次复杂后,全放或全挡往往不能满足需求,Allow 指令的价值随之凸显。常见的场景是:希望隐藏素材库整体,但单独放出一张品牌图片供搜索收录。

User-agent: *
Disallow: /assets/img/
Allow: /assets/img/brand.png

操作要点:规则书写的先后顺序有讲究,一般将 Disallow 放在前、Allow 放在后,且 Allow 的路径必须是被 Disallow 覆盖范围内更具体的一条。不同搜索引擎对规则优先级的理解可能存在细微差异,建议在实际投放后通过站长工具的抓取测试功能检查效果。

4. 处理多爬虫与 Sitemap 的配合

当一个站点需要同时面对谷歌、百度、必应等多个搜索引擎时,可以为不同爬虫分别设置规则。比如限制某个爬虫抓取图片目录,而其他爬虫不受影响。

User-agent: Googlebot
Disallow: /img/

User-agent: Baiduspider
Disallow: /private/

User-agent: *
Disallow: /tmp/

实用建议:Sitemap 指令可以放置在文件末尾,用于向爬虫提示网站地图的地址,有助于提升页面的发现效率。但要注意,此指令并不对所有搜索引擎生效,只是作为一种推荐机制存在。另外,robots.txt 文件本身也会被频繁请求,内容应尽量精简,避免无意义的冗余规则造成解析负担。

5. 常见问题

5.1 robots.txt 文件放错位置会怎样

如果文件没有被放置在域名根目录下,搜索引擎将无法找到它,所有规则都不会生效,相当于这个文件不存在。务必确认上传位置正确,同时文件名不能有大小写错误,应为全小写的 robots.txt。

5.2 Disallow 能不能阻止页面被收录

Disallow 只是阻止爬虫抓取该页面,但如果页面已被其他网站引用,搜索引擎仍可能通过外部链接发现并收录它。要彻底控制收录结果,需要配合 meta robots 标签或 noindex 指令一起使用,才能达到更可控的效果。

5.3 修改 robots.txt 后多久会生效

搜索引擎会定期重新抓取该文件,常见周期从几小时到几天不等。修改后想加快生效速度,可以通过各搜索引擎的站长平台提交一次抓取请求,通常很快就能获得反馈。

6. 总结

robots.txt 虽小,却直接影响搜索引擎对网站的抓取路径。配置时建议从简单模板开始,明确封禁目录的范围,善用 Allow 做精细放行,并注意路径书写和文件位置的细节。上线后记得用浏览器访问检测,再借助站长工具观察抓取表现,根据实际数据持续调整,就能让网站资源被更高效地收录。

图1 图2

nginx