端点SEO博客

系统化学习SEO技术,实时关注业界动态

robots.txt写法举例详细说明

robots文件往往放置于根目录下,包含一条或更多的记录,这些记录通过空行分开(以CR,CR/NL, or NL作为结束符),每一条记录的格式如下所示:
"<field>:<optional space><value><optionalspace>"

在该文件中可以使用#进行注解,具体使用方法和UNIX中的惯例一样。该文件中的记录通常以一行或多行User-agent开始,后面加上若干Disallow和Allow行,详细情况如下:

User-agent:该项的值用于描述搜索引擎robot的名字。

在"robots.txt"文件中,如果有多条User-agent记录说明有多个robot会受到"robots.txt"的限制,对该文件来说,至少要有一条User-agent记录。如果该项的值设为*,则对任何robot均有效,在"robots.txt"文件中,"User-agent:*"这样的记录只能有一条。如果在"robots.txt"文件中,加入"User-agent:SomeBot"和若干Disallow、Allow行,那么名为"SomeBot"只受到"User-agent:SomeBot"后面的 Disallow和Allow行的限制。

Disallow:该项的值用于描述不希望被访问的一组URL,这个值可以是一条完整的路径,也可以是路径的非空前缀,以Disallow项的值开头的URL不会被 robot访问。例如"Disallow:/help"禁止robot访问/help.html、/helpabc.html、/help/index.html,而"Disallow:/help/"则允许robot访问/help.html、/helpabc.html,不能访问/help/index.html。"Disallow:"说明允许robot访问该网站的所有url,在"/robots.txt"文件中,至少要有一条Disallow记录。如果"/robots.txt"不存在或者为空文件,则对于所有的搜索引擎robot,该网站都是开放的。

Allow:该项的值用于描述希望被访问的一组URL,与Disallow项相似,这个值可以是一条完整的路径,也可以是路径的前缀,以Allow项的值开头的URL 是允许robot访问的。例如"Allow:/hibaidu"允许robot访问/hibaidu.htm、/hibaiducom.html、/hibaidu/com.html。一个网站的所有URL默认是Allow的,所以Allow通常与Disallow搭配使用,实现允许访问一部分网页同时禁止访问其它所有URL的功能。

使用"*"and"$":Baiduspider支持使用通配符"*"和"$"来模糊匹配url。
"*" 匹配0或多个任意字符
"$" 匹配行结束符。

最后需要说明的是:如百度之类的绝大多数搜索引擎会严格遵守robots的相关协议,请注意区分您不想被抓取或收录的目录的大小写,百度会对robots中所写的文件和您不想被抓取和收录的目录做精确匹配,否则robots协议无法生效。

下面举例详细说明robots.txt写法

1、如果我们允许所有搜索引擎访问网站的所有部分的话,我们可以建立一个空白的文本文档,命名为robots.txt放在网站的根目录下即可,
或者使用如下robots.txt写法:
User-agent: *
Disallow:
或者
User-agent: *
Allow: /


2、如果我们禁止所有搜索引擎访问网站的所有部分的话
robots.txt写法如下:
User-agent: *
Disallow: /

PS:切记如果你的网站没有需要禁止收录的内容的话,索性就不要建立robots.txt文件,否则很容易错误的用了此方法禁止收录网站所有内容。


3、如果我们需要某一个搜索引擎的抓取的话,比如百度,禁止百度索引我们的网站的话
robots.txt写法如下:
User-agent: Baiduspider
Disallow: /


4、如果我们禁止Google索引我们的网站的话,其实跟示例3一样,就是User-agent:头文件的蜘蛛名字改成谷歌的Googlebot
即可
robots.txt写法如下:
User-agent: Googlebot
Disallow: /


5、如果我们禁止除Google外的一切搜索引擎索引我们的网站话
robots.txt写法如下:
User-agent: Googlebot
Disallow:
User-agent: *
Disallow: /


6、如果我们禁止除百度外的一切搜索引擎索引我们的网站的话
robots.txt写法如下:
User-agent: Baiduspider
Disallow:
User-agent: *
Disallow: /


7、如果我们需要禁止蜘蛛访问某个目录,比如禁止admin、css、images等目录被索引的话
robots.txt写法如下:
User-agent: *
Disallow: /css/
Disallow: /admin/
Disallow: /images/


8、如果我们允许蜘蛛访问我们网站的某个目录中的某些特定网址的话
robots.txt写法如下:
User-agent: *
Allow: /css/my
Allow: /admin/html
Allow: /images/index
Disallow: /css/
Disallow: /admin/
Disallow: /images/


9、我们看某些网站的robots.txt里的Disallow或者Allow里会看很多的符号,比如问号星号什么的,如果使用“*”,主要是限制访问某个后缀的域名,禁止访问/html/目录下的所有以".htm"为后缀的URL(包含子目录)。
robots.txt写法如下:
User-agent: *
Disallow: /html/*.htm


10、如果我们使用“$”的话是仅允许访问某目录下某个后缀的文件
robots.txt写法如下:
User-agent: *
Allow: .asp$
Disallow: /

11、如果我们禁止索引网站中所有的动态页面(这里限制的是有“?”的域名,例如index.asp?id=1)
robots.txt写法如下:
User-agent: *
Disallow: /*?*

12、有些时候,我们为了节省服务器资源,需要禁止各类搜索引擎来索引我们网站上的图片,这里的办法除了使用“Disallow: /images/”这样的直接屏蔽文件夹的方式之外,还可以采取直接屏蔽图片后缀名的方式。
示例:
如果我们禁止Google搜索引擎抓取我们网站上的所有图片(如果你的网站使用其他后缀的图片名称,在这里也可以直接添加)
robots.txt写法如下:
User-agent: Googlebot
Disallow: .jpg$
Disallow: .jpeg$
Disallow: .gif$
Disallow: .png$
Disallow: .bmp$


13、如果我们禁止百度搜索引擎抓取我们网站上的所有图片的话
robots.txt写法如下:
User-agent: Baiduspider
Disallow: .jpg$
Disallow: .jpeg$
Disallow: .gif$
Disallow: .png$
Disallow: .bmp$


14、除了百度之外和Google之外,禁止其他搜索引擎抓取你网站的图片
(注意,在这里为了让各位看的更明白,因此使用一个比较笨的办法——对于单个搜索引擎单独定义。)
robots.txt写法如下:
User-agent: Baiduspider
Allow: .jpeg$
Allow: .gif$
Allow: .png$
Allow: .bmp$
User-agent: Googlebot
Allow: .jpeg$
Allow: .gif$
Allow: .png$
Allow: .bmp$
User-agent: *
Disallow: .jpg$
Disallow: .jpeg$
Disallow: .gif$
Disallow: .png$
Disallow: .bmp$

15、仅仅允许百度抓取网站上的“JPG”格式文件
(其他搜索引擎的办法也和这个一样,只是修改一下搜索引擎的蜘蛛名称即可)
robots.txt写法如下:
User-agent: Baiduspider
Allow: .jpg$
Disallow: .jpeg$
Disallow: .gif$
Disallow: .png$
Disallow: .bmp$


16、仅仅禁止百度抓取网站上的“JPG”格式文件
robots.txt写法如下:
User-agent: Baiduspider
Disallow: .jpg$


17、如果"?"表示一个会话 ID,您可排除所有包含该 ID 的网址,确保 Googlebot 不会抓取重复的网页。但是,以"?"结尾的网址可能是您要包含的网页版本。在此情况下,可与 Allow 指令配合使用。
robots.txt写法如下:
User-agent:*
Allow:/*?$
Disallow:/*?
Disallow:/ *?
一行将拦截包含 ? 的网址(具体而言,它将拦截所有以您的域名开头、后接任意字符串,然后是问号 (?),而后又是任意字符串的网址)。Allow: /*?$ 一行将允许包含任何以 ? 结尾的网址(具体而言,它将允许包含所有以您的域名开头、后接任意字符串,然后是问号 (?),问号之后没有任何字符的网址)。 

18、如果我们想禁止搜索引擎对一些目录或者某些URL访问的话,可以截取部分的名字
robots.txt写法如下:
User-agent:*
Disallow: /plus/feedback.php? 

除非注明,文章均由©端点SEO博客原创
转载请保留本文链接:http://www.iseoduan.com/zhanneiyouhua/137.html
最后更新: 2016年11月22日 — 16:18
©2015~2017 | 端点SEO博客:揭露SEO本质,提供SEO培训,系统的学习SEO优化 备案号:京ICP备12011610号-3 站点地图|端点SEO博客