如何正确配置网站的robots.txt(转帖)
如何正确配置网站的robots.txt文件软色曰:新站上线,最希望能够尽快被搜索引擎收录。只有收录,才有后面的许许多多SEO。
一般来说,Baidu对于新站是来者不拒,有很多都是滥竽充数,而Google相对较慢了,原因是Google对于新站都有一定的审核机制,防止一些新站利用黑帽SEO短时期内即取得较好排名,这是一个最重要的可能原因。
当然,我们并不希望搜索引擎收录网站中的任何页面。其中某些页面——由于隐私、管理等等——并不希望被收录。
当搜索引擎来网站抓取页面时,它们会先查看该站的robots.txt文件,以了解你所允许它抓取的范围,包括哪些文件,哪些目录。
正确的配置网站的robots.txt非常重要,错误的配置会导致搜索引擎不能很好的收录甚至无法收录,这种案例现在仍有发生,有的博客建立以后长达几个月没有被收录。
各个搜索引擎都有自己的搜索机器人(Robots)在为他们工作,这些Robots在网络上沿着网页上的链接(一般是http和src链接)不断抓取资料建立自己的数据库,正是得益于这些机器人的勤劳工作,才有如此海量的数据供我们检索。
下面是一些搜索引擎的机器人名称:
机器人名称搜索引擎
Baiduspider http://www.baidu.com
Googlebot http://www.google.com/
MSNBOT http://search.msn.com/
FAST-WebCrawler http://www.alltheweb.com/
ia_archiver http://www.alexa.com/
Scooter http://www.altavista.com/
Slurp http://www.inktomi.com
为了防止自己的网页被搜索到,Robots开发界提出了两个方法:一个是robots.txt,另一个是The Robots META标签。
Robot.txt
简单的说,Robot.txt就是一个纯文本文档,里面包含一些命令,当Robots来网站时,就会首先检查该网站上是否有Robot.txt,若有,则一般会根据这些命令来执行;若无,则会自动抓取网页或网站。Robots.txt 文件应放于网站根目录下,并且该文件是可以通过互联网进行访问的。如Google的robot.txt:http://www.google.com/robots.txt
下面看一个具体的实例(#后面的内容是为方便阅读而设):
# robots.txt file start
# Exclude Files From All Robots:
User-agent: *
Disallow: /security/
Disallow: /admin/
Disallow: /admin
# End robots.txt file
User-agent:用于描述搜索引擎蜘蛛的名字,在 Robots.txt 文件中,如果有多条User-agent记录说明有多个搜索引擎蜘蛛会受到该协议的限制,对该文件来说,至少要有一条User-agent记录。如果该项的值设为*,则该协议对任何搜索引擎蜘蛛均有效,在”Robots.txt 文件中,“User-agent:*”这样的记录只能有一条。
Disallow:就表示不允许蜘蛛访问,你可以根据自己的需要设立后面的目录或者是文件,比如管理员后台登陆的页面或者目录等。
Disallow: /admin/:是指允许搜索引擎蜘蛛抓取/admin.html,而不能抓取/admin/index.html。
Disallow: /admin:是指/admin.html 和/admin/index.html都不允许搜索引擎蜘蛛抓取。
下面有四个举例:
例一:通过”/robots.txt”禁止所有搜索引擎蜘蛛抓取”/bin/cgi/”目录,以及 “/tmp/”目录和 /foo.html 文件,设置方法如下:
User-agent: *
Disallow: /bin/cgi/
Disallow: /tmp/
Disallow: /foo.html
例二:通过”/robots.txt”只允许某个搜索引擎抓取,而禁止其他的搜索引擎抓取。
如:只允许名为”slurp”的搜索引擎蜘蛛抓取,而拒绝其他的搜索引擎蜘蛛抓取 “/cgi/” 目录下的内容,设置方法如下:
User-agent: *
Disallow: /cgi/
User-agent: slurp
Disallow:
例三:禁止任何搜索引擎抓取我的网站,设置方法如下:
User-agent: *
Disallow: /
例四:只禁止某个搜索引擎抓取我的网站
如:只禁止名为“slurp”的搜索引擎蜘蛛抓取,设置方法如下:
User-agent: slurp
Disallow: /
Robots Meta标签
robot.txt主要是针对整个网站而言,相比之下,Robots Meta标签则是针对某个具体的网页不希望被搜索到。
需要注意的是:上述的robots.txt和Robots META标签限制搜索引擎机器人(Robots)抓取站点内容的办法只是一种规则,需要搜索引擎机器人的配合才行,并不是每个Robots都遵守的,这方面百度似乎做得不是很好。