robots.txt 的写法及用法
什么是 robots.txt?
robots.txt
是一个协议,而不是命令。它是搜索引擎在访问网站时查看的第一个文件,告诉搜索引擎蜘蛛程序在服务器上哪些文件可以被查看。百度官方建议,只有在网站中有不希望被搜索引擎收录的内容时,才需要使用 robots.txt
文件。如果希望搜索引擎收录网站上的所有内容,请勿建立 robots.txt
文件。
重要注意事项:
robots.txt
必须放置在站点的根目录下,文件名必须全部小写。- 如果站点没有
robots.txt
文件,所有搜索蜘蛛将能够访问网站上所有未被口令保护的页面。
robots.txt 的语法
robots.txt
文件使用两条规则:
- User-Agent: 适用于下列规则的漫游器。
- Disallow: 要拦截的网页。
如果其他网站链接了您 robots.txt
文件中禁止收录的网页,那么这些网页仍可能会出现在百度的搜索结果中,但您的网页内容不会被抓取、建入索引和显示。
robots.txt 在 SEO 中的作用
通过 robots.txt
文件,网站可以声明不想被搜索引擎访问的部分。每个网站都可以自主控制网站是否愿意被搜索引擎收录,或者指定搜索引擎只收录指定的内容。
格式:
- User-agent: 定义搜索引擎的类型。
- Disallow: 定义禁止搜索引擎收录的地址。
- Allow: 定义允许搜索引擎收录的地址。
常用搜索引擎类型:
- Google: Googlebot
- 百度: Baiduspider
- Yahoo: Yahoo!slurp
- Bing: MSNbot
- Yandex: YandexBot
robots.txt 文件的写法
User-agent: *
:* 代表所有搜索引擎种类。Disallow: /admin/
:禁止爬取 admin 目录下的所有内容。Disallow: /cgi-bin/*.htm
:禁止访问/cgi-bin/
目录下所有以.htm
为后缀的 URL。Allow: .htm$
:仅允许访问以.htm
为后缀的 URL。
robots.txt 文件用法举例
例 1: 禁止所有搜索引擎访问网站的任何部分
User-agent: *
Disallow: /
例 2: 允许所有搜索引擎访问
User-agent: *
Allow: /
例 3: 禁止特定搜索引擎访问
User-agent: Baiduspider
Disallow: /
例 4: 允许特定搜索引擎访问
User-agent: Baiduspider
Allow: /
例 5: 禁止访问特定目录
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/
例 6: 允许访问特定目录中的部分 URL
User-agent: *
Allow: /cgi-bin/see
Allow: /tmp/hi
Allow: /~joe/look
例 7: 使用 *
限制访问 URL
禁止访问 /cgi-bin/
目录下所有以 .htm
为后缀的 URL:
User-agent: *
Disallow: /cgi-bin/*.htm
例 8: 使用 $
限制访问 URL
仅允许访问以 .htm
为后缀的 URL:
User-agent: *
Allow: /.htm$
例 9: 禁止访问所有动态页面
User-agent: *
Disallow: /*?*
例 10: 禁止特定格式的图片抓取
禁止 Baiduspider 抓取 .jpg
格式的图片:
User-agent: Baiduspider
Disallow: /*.jpg$
Robots Meta 标签
robots.txt
文件主要是限制整个站点或目录的搜索引擎访问情况,而 Robots Meta 标签则主要针对具体页面。它用于告诉搜索引擎蜘蛛如何抓取该页内容。
Robots Meta 标签的指令:
- index:抓取该页面。
- noindex:不抓取该页面。
- follow:沿着该页面上的链接继续抓取。
- nofollow:不沿着该页面上的链接抓取。
注意事项:
robots.txt
和 Robots Meta 标签只是规定,需要搜索引擎机器人的配合才能生效。
robots.txt 使用误区
误区一:所有文件都需要被蜘蛛抓取
误解:如果网站上的所有文件都需要被抓取,则不需要 robots.txt
文件。
误区二:设置所有文件可抓取以增加收录率
误解:设置所有文件都可抓取不会增加收录率,反而可能浪费服务器资源。
误区三:禁止所有搜索蜘蛛抓取
误解:这样会导致整个网站不能被搜索引擎收录。
robots.txt 使用技巧
文件
- 每当搜索蜘蛛来寻找并不存在的
robots.txt
文件时,服务器会记录 404 错误,所以应该在网站中添加一个robots.txt
。 - 合理使用
robots.txt
文件可以避免访问时出错,比如防止搜索者直接进入购物车页面。 robots.txt
文件里可以包括sitemap
文件的链接,例如:
Sitemap: http://www.example.com/sitemap.xml
robots.txt 文件字符编码
- 建议: 使用 ANSI 格式编码或 UTF-8 编码格式,空出首行。
robots.txt 文件生效时间
- 生效时间: 7-15 天。
robots.txt 文件用法总结
- 例 1: 禁止所有搜索引擎访问网站的任何部分
User-agent: *
Disallow: /
- 例 2: 允许所有搜索引擎访问
User-agent: *
Allow: /
- 例 3: 禁止特定搜索引擎访问
User-agent: Baiduspider
Disallow: /
- 例 4: 禁止访问特定目录
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/