- A+
robots.是站点与 spider沟通的重要渠道,站点通过 robots文件声明该网站中不想被搜索引擎收录的部分或者指走搜索引擎只收录特定的部分。请注意,仅当您的网站包含不希望被搜索引擎收录的内容时,才需要使用 robots.txt文件。
如果您希望搜索引擎收录网站上所有内容,请勿建立 robots. txt文件。
为了避免站长在设置 robots文件时出现,百度站长平台待别推出了 robots工具,帮助站长正确设置 robots
robots文件往往放置于根目录下,包含条或更多的记录,这些记录通过空行分开(以CRCR/NL,orN作为结束符),每条记录的格式如下所示
<field>: <optional space><value><optionalspace>
在该文件中可以使用#进行注解,具体使用方法和UNⅨ中的惯例一样。该文件中的记汞通常以一行或多行User- agent开始,后面加上若干Dsaw和Aow行
详细情况如下
er-agent该项的值用于描述搜索引擎obot的名字。在" robots txt文件中,如果有多条 user-agen记录说明有多个 Robot会受到" robots txt"的限制,对该文件来说,至少要有一条 user-agent记录。如果该项的值设为*,则对任何robo均有效,在”' obots. txt"文件中," user-agent:*"这样的记录只能有一条。
如果在" robots txt文件中,加入"User- agent; Somebot"和若干 Disa low、Aow行,那么名为" Somebot"只受到" user-agent: Somebot"后面的 Disallow和Aow行的限
Disallow;该项的值用于描述不希望被访问的一组URL,这个值可以是一条完整的路径,也可以是路径的非空前缀,以 Disallow项的值开头的URL不会被robot问。例如"Dsaw/hep"禁 Irobot访问/ help. html/ helpabc. html、/hep/ index html,而" Disallow:/hep/"则允许 robot访问/ help. html、/ helpabc. html,不能访
可 help/index. html." Disallow;"说明允许robt访问该网站的所有u,在"/ robots,txt"文件中,至少要有一条 Disallow记录。如果" robots. txt"不存在或者为空文件,则对于所有的搜索引擎 Erobot,该网站都是开放的
Aow:该项的值用于描述希望被访问的鉏URL,与 Disallow项相似,这个值可以是条完聱的踏径,也可以是路径的前缀,以A。w项的值开头的URL是允许robo访问的。例如"Aow:/ hibaidu"允许robo访问/ hibaidu. htm、/ hibaiducom. html、/ hibaidu/com. html一个网站的所有URL默认是Aw的,所以AlOW通常与 Disallow搭配使用,实现允许访问一部分网页同时禁止访问其它所有URL的功能。
使用"*"and"s": Baiduspider,支持使用通配符”*"和"$"来模糊匹配urL匹配0或多个任意字符s"匹配行结束符
最后需要说明的是:百度会严格遵守 robots的相关协议,请注意区分您不想被抓取或收录的目录的大小写,百度会对 robots中所写的文件和您不想被抓取和收录的目录做精确匹配,否则 robots协议无法生效。
例1.禁止所有搜索引擎访问网站的任何部分
user-agent:*
Disallow:/
例2.允许所有的 robot访问或者也可以建一个空文件
例3.仅禁止 Baiduspider访问您的网站
user-agent Baiduspider
disallow:/
例4.仅允许 Baiduspider访问您的网站
user-agent: Baiduspider
Allow:/
user-agent: *
disallow:/
例5.仅允许 Baiduspider以及Googlebot问
user-agent: Googlebot
allow:/
user-agent:Baiduspider
allow:/
user-agent: *
disallow:/
例6.禁止 spider访问特定目录
user-agent:*
Disallow. /cai-bin/
例7.允许访问特定目录中的部分url
user-agent:*
Allow:/tmp/
例8.使用"*"限制访问url
禁止访问cgbn目录下的所有以"htm为后缀的url(包含子目录)
user-agent:*
disallow: carbin/*.htm
例9使用"$"限制访问url
仅允许访问以htm为后缀的URL
Alow./*. htm$
user-agent:*
Disallow:/
例10.禁止访问网站中所有的动态页面
user-agent:*
disallow:/*?*
例11.禁止 Baiduspider取网站上所有图片
仅允许抓取网页,禁止抓取任何图片
User-agent: Baiduspider
Disallow:/*.jpg$
Disallow:/*.jpeg$
Disallow:/*.png$
Disallow:/*.gif$
例12.仅允许 Baiduspider抓取网页和.gif格式图片
允许抓取网页和gif式图片,不允许抓取其他格式图片
Useragent:Baiduspider
Allow:/*.gif$
Disallow:/*.jpg$
Disallow:/*.jpeg$
Disallow:/*.png$
例13.仅禁止 Baiduspider抓取Jpg格式图片
Useragent:Baiduspider
Disallow:/ *.jpg$
robots.txt是搜索引擎访问网站的时候要查看的第一个文件。当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,所有的搜索蜘蛛将能够访问网站上所有没有被口令保护的页面。
误区一:我的网站上的所有文件都需要蜘蛛抓取,那我就没必要添加robots.txt文件了。反正如果该文件不存在,所有的搜索蜘蛛将默认能够访问网站上所有没有被口令保护的页面。每当用户试图访问某个不存在的URL时,服务器都会在日志中记录404错误(无法找到文件)。每当搜索蜘蛛来寻找并不存在的robots.txt文件时,服务器也将在日志中记录一条404错误,所以你应该做网站中添加一个robots.txt。
误区二:在robots.txt文件中设置所有的文件都可以被搜索蜘蛛抓取,这样可以增加网站的收录率。网站中的程序脚本、样式表等文件即使被蜘蛛收录,也不会增加网站的收录率,还只会浪费服务器资源。因此必须在robots.txt文件里设置不要让搜索蜘蛛索引这些文件。具体哪些文件需要排除, 在robots.txt使用技巧一文中有详细介绍。
误区三:搜索蜘蛛抓取网页太浪费服务器资源,在robots.txt文件设置所有的搜索蜘蛛都不能抓取全部的网页。 如果这样的话,会导致整个网站不能被搜索引擎收录。