robots.txt文件
robots.txt只能存放于网站的根目录下,置于除此之外的任何地方均不会被spider发现。
每个网站,或每个域名(包括子域名),只能有一个robots.txt。
文件名“robots.txt”为小写字母,其他如robots.txt或robots.txt是不正确的,命名错误将会被spider忽略。
正如上篇文章中介绍的,spider在网站内找不到robots.txt时将会被重定向到404 错误页面,这便有可能阻碍spider抓取和收录页面。虽然这并不一定会发生,但很多时候我们没必要冒这样的风险,一般来说,即使我们对网站的所有内容都没有限制,对所有的搜索引擎spider 都欢迎,最好也在根目录下创建一个robots.txt文件:
user-agent: *
disallow:
robots.txt的语法规则
在disallow项中使用小写字母,即文件名和目录名使用小写字母,特别在对大小写敏感的unix下更要注意。
robots.txt惟一支持的通配符是在user-agent使用的“*”,其代表所有的spider。除此之外,别的通配符均不可用。这方面的错误常见于在文件名或目录名中使用通配符。
robots.txt的限定项
在user-agent和disallow项的设定中,每行只允许有一个设定值,同时,注意不要有空行。至于行数,则没有限制,理论上说可以根据需要创建具有无数行的robots.txt。
下面即是一个错误的例子
user-agent: *
disallow: /dir1/ /dir2/ /dir3/
正确设置应为:
user-agent: *
disallow: /dir1/
disallow: /dir2/
disallow: /dir3/
robots.txt中的文件与目录
既定某个文件拒绝索引时,格式为文件名(包括扩展名),其后无“/”,而限定目录时,则需在目录名后加“/”。如下面的示例:
user-agent: *
disallow: /file.html
disallow: /dir/
特别注意的是,不要省略掉目录名后的“/”,不然,spider便极有可能误读相应的设置。
robots.txt中限定项的顺序
请看下方的示例:
user-agent: *
disallow: /
user-agent: googlebot
disallow:
该设定本意是想允许google访问所有页面,同时禁止其他spider的访问。但在这样的设置下,googlebot在读取前2行后便会离开网站,后面对其的“解禁”完全失去了意义。正确的格式应为:
user-agent: googlebot
disallow:
user-agent: *
disallow: /
robots.txt中的注释
尽管在robots.txt的标准中,可以在限定项的后面使用“#”添加注释,如下面的例子
user-agent: googlebot #这是对google的设置
disallow:
但很多研究与测试表明,不少spider对这样格式的解读存在问题。为确保其能更好地工作,最好采用如下设置:
#这是对google的设置
user-agent: googlebot
disallow:
新闻热点
疑难解答