Robots.txt 文件怎么写,正确控制谷歌爬虫抓取
robots.txt 管什么,不管什么
robots.txt 是放在站点根目录的纯文本文件,告诉爬虫“哪些目录别来抓”。关键区别:它管的是抓取,不是索引。想让页面不出现在搜索结果里要用 noindex,而不是 robots.txt——被 robots.txt 挡住的页,如果被别的站链接,仍可能被收录,只是没有内容摘要(来源见文末)。
基本语法
| 指令 | 作用 | 示例 |
|---|---|---|
| User-agent | 指定对哪个爬虫生效 | User-agent: * |
| Disallow | 禁止抓取的路径 | Disallow: /admin/ |
| Allow | 在禁止范围内放行 | Allow: /admin/public/ |
| Sitemap | 声明站点地图地址 | Sitemap: https://x.com/sitemap.xml |
| 通配 | * 匹配任意字符,$ 表示结尾 | Disallow: /*.pdf$ |
三种常用写法
# 1. 全站允许
User-agent: *
Disallow:
# 2. 挡后台与搜索结果页
User-agent: *
Disallow: /admin/
Disallow: /search
Disallow: /*?
# 3. 放行所有并声明站点地图
User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml
注意:Disallow 后面留空表示“允许全部”,而 Disallow: / 是全站禁止,别写错。
几条硬规则
- 别挡 CSS/JS:谷歌需要渲染页面,挡了会误判“页面空白”;
- 别用它删已收录页:要删除用 noindex 或返回 404/410;
- 路径区分大小写与前缀:/Admin 与 /admin 是两回事;
- 必须放根目录:只有 https://域名/robots.txt 才有效,子目录下无效。
检查方法
改完后用 GSC 的 robots.txt 报告看是否被正确解析、有无报错;也可用“网址检查”的抓取测试,确认目标页没被意外拦截。改动一般有缓存,需要一点时间生效。
来源:https://developers.google.com/search/docs/crawling-indexing/robots-txt
来源:https://developers.google.com/search/docs/crawling-indexing/block-indexing
