如何为网站写一个好的robots.txt

robots.txt是什么东西?不多说看百度百科:http://baike.baidu.com/view/9274458.htm

问题来了:

1、后面有没有s?是robots.txt还是robot.txt?

这个简单,看看谷歌和百度的robots(人家做搜索引擎还不比咱专业?),http://www.google.com.hk/robots.txt  http://www.baidu.com/robots.txt,答案显然是有s的。

2、这个robots.txt文件应该放在哪儿?txt的编码格式是utf8还是ANSI?

首先robots.txt文件应该是放在根目录里,这个要知道。要让robots.txt对搜索引擎更加友好,txt 的编码格式选什么?网上很多人讹传说是UTF8(http://www.jb51.net/yunying/12042.html),我们有QQ旋风下载谷歌、百度、腾讯的robots.txt文件看看他们是什么格式?http://www.google.com.hk/robots.txt  http://www.baidu.com/robots.txt http://www.qq.com/robots.txt ,无一例外都是ANSI(也就是windows下默认的txt格式,打开txt,另存为就可以看到当前txt的编码格式了),什么格式最适合,还需要说吗?

3、robots.txt写法

抄一段过来学习下:http://baike.baidu.com/view/9274458.htm

例1. 禁止所有搜索引擎访问网站的任何
User-agent: *
Disallow: /
例2. 允许所有的robot访问 (或者也可以建一个空文件 “/robots.txt” file)
User-agent: *
Allow: /
例3. 禁止某个搜索引擎的访问
User-agent: BadBot
Disallow: /
例4. 允许某个搜索引擎的访问
User-agent: Baiduspider
allow:/
例5.一个简单例子
在这个例子中,该网站有三个目录对搜索引擎的访问做了限制,即搜索引擎不会访问这三个目录。
需要注意的是对每一个目录必须分开声明,而不要写成 “Disallow: /cgi-bin/ /tmp/”。
User-agent:后的*具有特殊的含义,代表“any robot”,所以在该文件中不能有“Disallow: /tmp/*” or “Disallow:*.gif”这样的记录出现。
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/

4、一个好的robots.txt

看看这3家的robots.txt http://www.google.com.hk/robots.txt  http://www.baidu.com/robots.txt http://www.qq.com/robots.txt 

看到它们的robots主要有4数据:

  1. User-agent:google和腾讯都是*号,百度比较特殊,做了很多sipider名单限制,有搜狗、msn、谷歌、搜搜、有道、即刻、盘古、宜搜,百度为什么要这么做?百度有特殊原因的,你猜对了,是屏蔽360so,看他最后两行,表示除名单以外的搜索引擎都不允许爬去所以域名下网页,百度的其他几个二级域名知道百科也是这样的。但是去看了下360so,发现搜“腾讯 百科”结果页还是有百度百科的,因此才有“360so违反robots协议爬取百度多个域名下的页面,百度采取强制跳转百度首页。”之说。
  2. Disallow:不允许的
  3. Allow:允许的。加这个会被搜索引擎更快爬取吧?
  4. Sitemap:加这个会更利于爬取。google和腾讯都有,百度没有这个就不知道了。

 下面是本站robots.txt,仅供参考:

User-agent: *
Disallow: /privacy/
Sitemap: http://blog.galois21.com/sitemap.xml
Sitemap: http://blog.galois21.com/sitemap_baidu.xml

 

浏览量(102) | 此条目发表在计算机分类目录,贴了标签。将固定链接加入收藏夹。