robots.txt用法介绍,网站优化

来源:互联网 发布:linux c语言删除文件 编辑:程序博客网 时间:2024/04/29 10:08
robots.txt是一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被robots访问的部分,或者指定搜索引擎只收录指定的内容,注意这是一个针对搜索引擎的一个文件。


当一个搜索机器人(有的叫搜索蜘蛛)访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,那么搜索机器人就沿着链接抓取。


另外,robots.txt必须放置在一个站点的根目录下,而且文件名必须全部小写。


robots.txt写作语法


首先,我们来看一个robots.txt范例:http://www.phpernote.com/robots.txt


访问以上具体地址,我们可以看到robots.txt的具体内容如下:


User-agent: *
Allow: /
#下列目录除外
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/


以上文本表达的意思是允许所有的搜索机器人访问phpernote.com站点下的除了 wp-admin/,wp-includes/,wp-contents 这几个目录外其他的所有文件。


具体语法分析:其中#后面文字为注释说明信息;User-agent:后面为搜索机器人的名称,后面如果是*,则泛指所有的搜索机器人;Disallow:后面为不允许访问的文件目录。


下面,我将列举一些robots.txt的具体用法:


允许所有的搜索引擎访问网站所有的部分的robot写法:


User-agent: *
Disallow:


或者也可以建一个空文件 robots.txt 文件,功能同上。


禁止所有搜索引擎访问网站的任何部分的robots写法:


User-agent: *
Disallow: /


禁止所有搜索引擎访问网站的某几个部分(下例中的01、02、03目录)的robots写法:


User-agent: *
Disallow: /01/
Disallow: /02/
Disallow: /03/


禁止某个搜索引擎的访问(如下例中禁止百度引擎抓取)的robots写法:


User-agent: Baiduspider
Disallow: /


注意:以上写法只禁止了百度搜索引擎的抓取,其他搜索引擎还是可以来抓取的。


只允许某个搜索引擎的访问(如下例中只允许谷歌搜索引擎抓取站点内容)的robots写法:


User-agent: Googlebot
Disallow:
User-agent: *
Disallow: /


禁止搜索引擎抓取自己网站图片(禁止图片抓取)的robots写法:


User-agent: *
Disallow: .jpg$
Disallow: .jpeg$
Disallow: .gif$
Disallow: .png$
Disallow: .bmp$


如果你的网站有动态和静态两种形式的网页,你只允许抓取静态页面(禁止动态页面)的robots写法:


User-agent: *
Disallow: /*?*


下面顺便将各大搜索引擎的蜘蛛的名字分享一下(这里仅列举中国国内比较常用的一些搜索引擎):


google蜘蛛:Googlebot
百度蜘蛛:Baiduspider
搜狗蜘蛛:sogou spider
360蜘蛛:360Spider
yahoo蜘蛛:Yahoo!slurp
alexa蜘蛛:ia_archiver
bing蜘蛛:MSNbot
Soso蜘蛛:Sosospider
Google Adsense蜘蛛:Mediapartners-Google
有道蜘蛛:YoudaoBot


robots 用于定义网页搜索引擎索引方式。robots meta 标签跟任何一种META标签是一样的,robots meta 放置在HTML网页代码的 head 之内。


robots 语法
<meta name="robots" content="robotterms" />


robotterms 是一组使用逗号(,)分割的值,通常有如下几种取值:none,noindex,nofollow,all,index和follow。各个值得具体释义如下:


none 搜索引擎将忽略此网页,等价于noindex,nofollow。


noindex 搜索引擎不索引此网页。


nofollow 搜索引擎不继续通过此网页的链接索引搜索其它的网页。


all 搜索引擎将索引此网页与继续通过此网页的链接索引,等价于index,follow。


index 搜索引擎索引此网页。


follow 搜索引擎继续通过此网页的链接索引搜索其它的网页。


注:如页面没有定义该标签,则默认是 <meta name="robots" content="index,follow" />


以下为具体的使用示例:


<meta name="robots" content="index,follow" />


上面示例定义了此网页可以被搜索引擎索引进数据库并且搜索引擎可以通过此网页的链接继续索引其它网页,但如上定义没有实际作用,因为默认的值就是 index,follow 。


<meta name="robots" content="noindex" />
//或者 <meta name="robots" content="noindex,follow" />


上面示例定义了此网页不被搜索引擎索引进数据库,但搜索引擎可以通过此网页的链接继续索引其它网页


<meta name="robots" content="index,nofollow" />
//或者 <meta name="robots" content="nofollow" />


上面示例定义了此网页可被搜索引擎索引进数据库,但搜索引擎不可以通过此网页的链接继续索引其它网页


<meta name="robots" content="noindex,nofollow" />
//或者 <meta name="robots" content="none" />


上面示例定义了此网页不被搜索引擎索引进数据库并且搜索引擎不可以通过此网页的链接继续索引其它网页


当content需要包含多个属性的时候需要用英文逗号隔离,注意同种属性正反两个方面(例如:index与noindex)不能同时出现在content之中。


注:目前只有少数的机器人支持此标签!谷歌,必应,雅虎均支持以上标签值,百度官方说法是目前只支持 noarchive 和 nofollow 。


(1)只针对谷歌 GOOGLEBOT 使用 robots
<meta name="googlebot" content="noindex,nofollow" />
(2)只针对百度 baiduspider 使用 robots
<meta name="baiduspider" content="noarchive,nofollow" />
0 0