Robots.txt 是什么?个人博客必懂的爬虫规则配置指南
一、Robots.txt 到底是什么?
简单一句话:robots.txt 是一个放在网站根目录下的纯文本文件,它告诉搜索引擎爬虫哪些页面可以抓取,哪些页面不可以抓取。
它的全名是"网络爬虫排除标准"(Robots Exclusion Protocol),诞生于1994年。你可以把它理解为网站门口挂的一块牌子——上面写着"欢迎光临"或者"闲人免进"。当百度蜘蛛、Googlebot、ClaudeBot 等爬虫访问你的博客时,它们会第一时间去查看 https://你的域名/robots.txt 这个文件,然后按照里面的规则决定接下来去哪里、不去哪里。
需要特别强调的是:robots.txt 是一种"君子协定",它不具备法律强制力。 遵守规则的爬虫(如Googlebot、Bingbot)会严格执行;而恶意爬虫可能完全无视它。但对于个人博客而言,配置好 robots.txt 仍然是SEO的基本功,原因有二:
控制爬虫预算: 搜索引擎分配给每个网站的抓取资源是有限的,合理引导爬虫把时间花在高价值内容上,能加速新文章的收录。
保护敏感页面: 后台管理页、测试页面、重复内容等不希望被索引的内容,可以通过 robots.txt 进行初步屏蔽。
工具推荐:Robots.txt 在线生成器
二、核心指令详解:四个关键词掌控全局
一个标准的 robots.txt 文件由若干条"规则组"构成,每组规则包含四个核心指令。下面用表格清晰呈现:
| 指令 | 作用 | 示例 | 说明 |
|---|---|---|---|
| User-agent | 指定规则适用的爬虫 | User-agent: * | * 代表所有爬虫;也可指定具体名称如 Googlebot |
| Disallow | 禁止访问的路径 | Disallow: /admin/ |
必须以 / 开头,表示相对路径 |
| Allow | 允许访问的路径 | Allow: /blog/public/ | 优先级高于 Disallow,可覆盖更宽泛的禁止规则 |
| Sitemap | 网站地图地址 | Sitemap: https://www.fuwa.org/sitemap.xml | 帮助爬虫高效发现所有重要页面 |
补充两个已废弃或不推荐使用的指令:
Crawl-delay:设置爬取延迟(单位:秒),但 Google已明确不再支持,控制速度请在Google Search Console中设置。Noindex:切勿在 robots.txt 中使用,Google已于2019年停止支持。要阻止页面被索引,应使用noindex元标签或X-Robots-TagHTTP头。
三、个人博客最常用的6种配置场景
不同的博客有不同的需求,以下是个人博客最常见的配置方案,直接复制可用:
| 场景 | robots.txt 配置 | 适用情况 |
|---|---|---|
| 完全开放,允许所有爬虫 | User-agent: *Allow: / | 新建博客,希望被搜索引擎全面收录 |
| 屏蔽后台管理目录 | User-agent: *Disallow: /admin/Disallow: /wp-admin/ | WordPress等CMS博客,保护后台入口 |
| 屏蔽重复内容和标签页 | User-agent: *Disallow: /tag/Disallow: /*?replytocom=* | 避免评论分页、标签归档页被大量索引 |
| 只禁止某个搜索引擎 | User-agent: BadBotDisallow: /User-agent: *Allow: / | 屏蔽特定恶意爬虫,不影响其他搜索引擎 |
| 开发中临时屏蔽 | User-agent: *Disallow: / | 网站还在开发阶段,上线后务必删除! |
| 允许所有但指定地图 | User-agent: *Allow: /Sitemap: https://www.fuwa.org/sitemap.xml | 最推荐的通用配置,兼顾开放与效率 |
四、语法细节:这些规则决定成败
配置 robots.txt 看似简单,但语法细节直接影响效果。以下是必须掌握的规则:
1. 路径必须以斜杠 / 开头
Disallow: /admin 会屏蔽所有以 /admin 开头的URL(包括 /admin.html 和 /admin/);而 Disallow: /admin/ 只屏蔽 /admin/ 目录下的内容。建议统一使用末尾带斜杠的写法,语义更清晰。
2. 指令按从上到下的顺序执行
爬虫会逐行读取规则,先匹配到的规则优先生效。如果同一组中 Allow 写在 Disallow 前面且范围更广,后面的 Disallow 会失效。
错误示范:
User-agent: * Allow: / Disallow: /admin/ # ❌ 这条会被上面的Allow覆盖,实际上不生效
正确写法:
User-agent: * Disallow: /admin/ Allow: /
3. 通配符的正确使用
*匹配任意字符,如User-agent: *代表所有爬虫。$匹配URL结尾,如Disallow: /*.pdf$表示禁止所有PDF文件。?匹配问号,如Disallow: /*?*禁止所有带参数的动态URL。
4. 大小写敏感
文件名必须是小写的 robots.txt,不能写成 Robots.txt 或 ROBOTS.TXT,否则部分系统无法识别。

五、7个必须避开的深坑:配置错误比不配置更可怕
根据大量实际案例,以下是个人博客配置 robots.txt 时最高频的错误,每一个都可能让你的博客从搜索引擎中"消失":
| 序号 | 常见错误 | 后果 | 正确做法 |
|---|---|---|---|
| 1 | 文件放错位置 | 放在子目录下完全无效,爬虫根本找不到 |
必须放在网站根目录,如 https://www.fuwa.org/robots.txt |
| 2 | 使用绝对URL | Disallow: https://www.fuwa.org/admin/ 是无效语法 |
只能使用相对路径,以 / 开头 |
| 3 | Allow写在Disallow前面且范围更广 | Disallow规则被覆盖,该屏蔽的没屏蔽 | Disallow在前,或Allow范围更具体 |
| 4 | 屏蔽了CSS/JS文件 | Googlebot无法渲染页面,严重影响排名 |
永远不要 Disallow: /*.css 或 Disallow: /*.js |
| 5 | 上线后忘记移除开发期屏蔽 | Disallow: / 导致整站不被收录 | 上线前务必检查并删除临时屏蔽规则 |
| 6 | 误以为robots.txt能隐藏页面 | 被屏蔽的页面仍可能被外部链接引向并索引 |
真正隐藏页面需用 noindex 元标签或密码保护 |
| 7 | 子域名未单独配置 | example.com 的 robots.txt 对 blog.example.com 无效 | 每个子域名都需要独立的 robots.txt 文件 |
其中第4点和第6点是重灾区。 很多博客主为了"保护"网站,把CSS和JS都屏蔽了,结果Googlebot抓取到的是一个没有样式、没有交互的"裸页面",直接判定为低质量内容,排名一落千丈。而误以为 robots.txt 能隐藏页面更是危险——它只能阻止爬虫主动抓取,但如果其他网站链接到了那个页面,Google照样可能发现并索引。
六、AI爬虫时代:robots.txt 有了新对手
2024年以来,GPTBot、ClaudeBot、PerplexityBot 等AI爬虫迅速崛起。好消息是:目前主流AI爬虫都遵守 robots.txt 指令,包括Gemini、Perplexity和ChatGPT。
但AI爬虫有一个重要细分——它们分为三类:
| 类型 | 代表User-agent | 作用 | 是否应屏蔽 |
|---|---|---|---|
| 训练爬虫 | GPTBot、ClaudeBot、Google-Extended | 收集数据用于AI模型训练 | 根据意愿决定,屏蔽后AI可能仍会引用你的内容 |
| 搜索/索引爬虫 | OAI-Searchbot、PerplexityBot | 构建AI搜索索引 | 强烈建议允许访问,否则你的内容不会出现在AI搜索结果中 |
| 用户发起爬虫 | ChatGPT-User、Perplexity-User | 用户提问时实时获取内容 | 通常不用于训练,可根据需要控制 |
关键建议:如果你希望自己的博客内容被AI搜索引用(如被ChatGPT、Perplexity回答时提到),务必允许搜索/索引类爬虫访问。 屏蔽 OAI-Searchbot 会让你的网站从AI搜索结果中消失,但屏蔽训练爬虫 GPTBot 只是减少被用于训练,内容仍可能在AI回答中被引用。
个人博客的AI爬虫配置示例:
User-agent: GPTBot Disallow: / User-agent: OAI-Searchbot Allow: / User-agent: PerplexityBot Allow: / User-agent: * Disallow: /admin/ Disallow: /private/ Sitemap: https://www.fuwa.org/sitemap.xml
七、如何创建、验证与维护 robots.txt
创建步骤非常简单,三步搞定:
用纯文本编辑器创建文件:记事本、VS Code、Sublime Text 均可,文件名必须是
robots.txt(全小写),编码使用 UTF-8。上传到网站根目录:与
index.html同级的位置。如果用的是WordPress,直接放在网站根目录即可;如果用PHP动态生成,需配合.htaccess重写规则。验证是否生效:在浏览器中访问
https://你的域名/robots.txt,确认内容正确显示。然后使用 Google Search Console 的 robots.txt 测试工具 进行最终验证,确保没有意外屏蔽重要页面。
维护建议:
每次网站结构大改动后,检查 robots.txt 是否需要更新。
定期使用测试工具验证规则是否生效。
如果网站有多个子域名(如
blog.fuwa.org、shop.fuwa.org),每个子域名都需要独立配置。
八、总结:个人博客的 robots.txt 黄金法则
对于个人博客而言,robots.txt 不需要搞得太复杂,记住以下黄金法则就够了:
| 法则 | 说明 |
|---|---|
| 默认开放,按需屏蔽 | 不确定要不要屏蔽的页面,先允许抓取 |
| 只屏蔽真正需要保护的 | 后台目录、测试页面、重复内容,其他一律放开 |
| 永远不要屏蔽CSS/JS | 这是SEO的红线,碰了就后悔 |
| 上线前检查开发期规则 | Disallow: / 是最常见的"上线即暴毙"原因 |
| 允许AI搜索爬虫访问 | 2026年了,AI搜索流量不容忽视 |
| 配合Sitemap使用 | 告诉爬虫你的重要页面在哪里,比屏蔽什么更重要 |
robots.txt 是你与搜索引擎之间的第一份"合同"。 写对了,爬虫高效抓取你的优质内容,SEO蒸蒸日上;写错了,轻则浪费爬虫预算,重则整站从搜索结果中消失。对于个人博客主来说,花十分钟配置好这个文件,是投入产出比最高的SEO操作之一。
现在就去检查一下你的 https://你的域名/robots.txt,看看它写对了没有。
相关工具
Robots.txt 在线生成器
版权及免责申明:本文由@fuwa原创发布。该文章观点仅代表作者本人,不代表本站立场。本站不承担任何相关法律责任。
如若转载,请注明出处:https://www.fuwa.org/tutorials/34.html

