搜索引擎优化学习,如何使用 robots.txt

robots.txt 文件位于您网站的根目录下,用于说明你不希望搜索引擎访问的那些内容。可依照网站各部分和特定的网页抓取工具类型(例如移动版抓取工具与桌面版抓取工具),表明可以访问的网站内容。本身有如下限制:

  1. 必须将robots.txt代码保存为文本文件。
  2. 必须将该文件保存到网站的顶级目录下。
  3. robots.txt 文件必须命名为 robots.txt。

robots.txt 用来做什么

  1. 对于网页来说,robots.txt 只能用来控制流量,主要包括两方面,一是你服务器的资源,包括 CPU, 流量等等,二是搜索引擎的资源,防止抓取不重要或者相同的资源。
  2. 限制搜索引擎抓取图片
  3. 限制资源文件的,例如 script, style, image,这里面有一个原则,如果页面的展现会因为这个资源的缺失,让搜索引擎难以理解,那么最好不要限制。

robots.txt 有哪些限制

  1. robots.txt 更像是一个约定,不能当做一个逻辑严谨的方式来使用,并不是所有的搜索引擎都会遵守。如果不希望内容被访问,那么加密或者使用密码。
  2. 不同的爬虫对 robot.txt 的要求是不一样的
  3. robots.txt 并不能阻止你的链接被别的网站引用,这样的结果是可能会出现的搜索引擎中,最好的方式是加密,用密码或者在 meta 标签中加 noindex.

robots.txt 的内容

User-agent: [the name of the robot the following rule applies to]
Disallow: [the URL path you want to block]
Allow: [the URL path in of a subdirectory, within a blocked parent directory, that you want to unblock]

User-agent 用来指定,针对搜索引擎的哪个爬虫。Disallow 跟 Allow 里面的内容可以分为三类:

  1. 单独的文件
  2. 文件夹
  3. 正则表达式

举例如下:

Disallow: /  # 禁止访问所有的页面
Disallow: /sample-directory/ # 禁止访问所有 /sample-directory/ 下的页面
Disallow: /private_file.html # 禁止访问 /private_file.html 文件

# 禁止谷歌文章所有的 gif 图片
User-agent: Googlebot
Disallow: /*.gif$
# 禁止搜索引擎访问所有页面,只对 Mediapartners-Google 开放
User-agent: *
Disallow: /
User-agent: Mediapartners-Google
Allow: /

更多详细的内容,可以访问[2],如果对于 robots.txt 还有什么疑问也可以访问[4]。

简单的 robots.txt 的示例

下面的示例是我在网站上用的,因为现在网站比较简单,所以允许访问所有页面,并且加上了 sitemap.xml,可以通过[3],来检查一下正确性。

# www.robotstxt.org/
# www.google.com/support/webmasters/bin/answer.py?hl=en&answer=156449
User-agent: *
Allow: /
Sitemap: http://example.com/sitemap.xml

资料来源

[1] https://support.google.com/webmasters/answer/6062608?hl=en&visit_id=1-636226817779232620-937965702&rd=1
[2] https://support.google.com/webmasters/answer/6062596?hl=en&ref_topic=6061961 
[3] https://support.google.com/webmasters/answer/6062598?hl=en&ref_topic=6061961
[4] http://www.robotstxt.org/faq.html

Like what you read? Give HunterQ a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.