前言
搜索引擎通过网络蜘蛛(机器人)抓取网页的内容,并展示在相关的搜索结果中。但是有些网页内容我们可能并不想被搜索引擎收录和索引,如管理员后台等。
我们就可以通过 robots.txt 文件来声明允许/禁止搜索引擎的抓取工具抓取某些目录或网页,从而禁止搜索引擎收录指定网页内容。
本文详细介绍下网站的 robots.txt 文件配置和使用方法,以及 robots.txt 怎么写,并分享几款 robots.txt 生成工具。
什么是 robots.txt
robots.txt 是存放在网站根目录下的一个纯文本文件,用来告诉网络蜘蛛本站中的哪些内容允许爬取,哪些内容是不允许爬取的。
搜索引擎的蜘蛛在访问网站时,也会首先检查该网站的 robots.txt 文件,获取允许在网站上的抓取范围。
需要注意的是,robots.txt 只是一种大家约定俗成的规则,并不是强制措施,有些搜索引擎是不支持的,因此它不能保证网页内容一定会/不会被抓取。
robots.txt 文件设置规则
格式和位置
- 文件名必须为
robots.txt
(全部小写); - 文件格式为 UTF-8 编码的纯文本文件;
- 必须放在网站根目录下,可通过 www.example.com/robots.txt 访问到;
- 每个网站有且只能有一个 robots.txt 文件;
- 对子域名和端口同样有效,如 blog.example.com;
#
开头的后面为备注内容;- 注意要使用英文字符。
指令语法说明
每条记录均由 字段: 值
组成,如 Sitemap: https://example.com/sitemap.xml。
User-agent
:用于指定指令所作用于的目标抓取工具(网络蜘蛛),后接抓取工具名称;Disallow
:指定不允许抓取的目录或网页,后面为空则表示允许抓取一切页面;Allow
:指定允许抓取的目录或网页;Sitemap
:站点地图的位置,必须是绝对路径;*
:表示通配符;$
:表示网址结束;/
:匹配根目录以及任何下级网址。
一组记录示例:
1 2 3 | # 禁止谷歌抓取网站 news 标签下的所有内容 user-agent: googlebot disallow: /tag/news |
实用 robots.txt 写法示例与说明
如果网站没有 robots.txt 文件,可以手动创建并上传到网站根目录下;即使没有需要禁止搜索引擎收录的网页,也建议添加一个空的 robots.txt 文件。(本文地址:https://go2think.com/robots-txt-guide/)
请注意文中的 “仅” “允许” “禁止” 的区别!
规则说明 | 指令示例 |
---|---|
允许所有蜘蛛抓取网站任何内容 | User-agent: * Allow: / |
禁止所有蜘蛛抓取网站任何内容 | User-agent: * Disallow: / |
仅允许谷歌蜘蛛抓取 | User-agent: Googlebot Allow: /User-agent: * Disallow: / |
仅禁止谷歌蜘蛛抓取 | User-agent: Googlebot Disallow: /User-agent: * Allow: / |
禁止谷歌蜘蛛和百度蜘蛛抓取 | User-agent: Googlebot User-agent: Baiduspider Disallow: / |
禁止抓取指定目录下的内容 | User-agent: * Disallow: /play/ Disallow: /fun/ |
禁止抓取指定网页 | User-agent: * Disallow: /example.html |
仅允许抓取指定结尾的文件(此处为 .html) | User-agent: * Allow: /*.html$ Disallow: / |
禁止抓取指定格式的文件(此处为 PNG 图片) | User-agent: Googlebot Disallow: /*.png$ |
仅允许抓取指定目录的某个子目录 | User-agent: * Allow: /play/ocean Disallow: /play/ |
路径匹配示例:(↓截图自 Google Developers)
Tips
常用搜索引擎蜘蛛(机器人)名称
- 谷歌蜘蛛:Googlebot、Googlebot-Mobile、Googlebot-Image;
- 百度蜘蛛:Baiduspider、Baiduspider-mobile、Baiduspider-image;
- 搜狗蜘蛛:Sogou web spider、Sogou inst spider、Sogou spider2、Sogou blog、Sogou News Spider、Sogou Orion spider;
- 必应蜘蛛:bingbot;
- 360蜘蛛:360Spider;
- 有道蜘蛛:YoudaoBot;
- 雅虎蜘蛛:slurp;
- Yandex蜘蛛:yandex。
如果不知道蜘蛛的名称可以查看一些大站的写法参考,如 https://www.baidu.com/robots.txt。
robots.txt 生成工具
- robots文件生成 – 站长工具
- 在线robots.txt文件生成工具 – 站长辅助工具 – W3Cschool
- 在线robots文件生成-在线网站robots.txt文件生成器
- Robots.txt Generator – Generate robots.txt file instantly
- Free Robots.txt Generator Tool
参考资料
- Robots.txt 规范 | 搜索 | Google Developers
- 创建 robots.txt 文件 – Search Console帮助
- 禁止搜索引擎收录的方法_搜索学院_百度搜索资源平台
- Robots.txt 使用指南:网站 robots.txt 文件配置方法详解 – Go 2 Think
结语
网站的 robots.txt 文件就相当于一份网站声明,用来告知来访蜘蛛 “网站中想/不想被搜索引擎收录的指定网页和内容路径”。
对于大多数搜索引擎都有效果,但是也有些不支持的搜索引擎,可以使用 meta
标签来强制禁止(见漫游器元标记和 X-Robots-Tag HTTP 标头规范)。
Go 2 Think 原创文章,转载请注明来源及原文链接