robots.txt

来源:互联网 发布:jsp嵌入java代码 编辑:程序博客网 时间:2024/04/25 17:43

来自百度百科


robot.txt

求助编辑百科名片

搜索引擎通过一种程序robot(又称spider),自动访问互联网上的网页并获取网页信 息。您可以在您的网站中创建一个纯文本文件robots.txt,在这个文件中声明该网站中不想被robot 访问的部分,这样,该网站的部分或全部内容就可以不被搜索引擎收录了,或者指定搜 索引擎只收录指定的内容。

目录

文件位置
文件格式
主要作用
一般屏蔽
使用技巧

编辑本段文件位置

robots.txt文件应该放在网站根目录下。举例来说,当搜索引擎[1]访问一个网站时,首先会检查该网站中是否存在robots.txt 这个文件,如果robots机器人程序找到这个文件,它就会根据这个文件的内容,来确定它访问权限的范围。
wordpress的robots文件位置
没在wordpress网站根节目上传过robots.txt,当搜寻引擎和用户拜访某个文件时,wordpress程序会主动生成一个robots.txt给搜寻引擎和用户;若是我们上传编写的robots.txt到网站根节目,用户和搜寻引擎蛛蛛拜访的就是我们上传的文件,wordpress就不会再产生那个文件了。只有服务器找不到robots的时候wordpress才会生成这个文件。

编辑本段文件格式

“robots.txt”文件包含一条或多条记录,这些记录通过空行分开(以CR、CR/NL、or NL作为结束符),每一条记录的格式如下所示:
“<field>:<optionalspace><value><optionalspace>”
在该文件中可以使用#进行注释,具体使用方法和UNIX中的惯例一样。该文件中的记录通常以一行或多行User-agent开始,后面加上若干Disallow行,详细情况如下:
User-agent:
该项的值用于描述搜索引擎机器人robot的名字。在“robots.txt”文件中,如果有多条 User-agent记录,说明有多个robot会受到该协议的约束。所以,“robots.txt”文件中至少要有一条User- agent记录。如果该项的值设为*(通配符),则该协议对任何搜索引擎机器人均有效。在“robots.txt”文件 中,“User-agent:*”这样的记录只能有一条。
Disallow:
该项的值用于描述不希望被访问到的一个URL,这个URL可以是一条完整的路径,也可以 是部分的,任何以Disallow开头的URL均不会被robot访问到。例如:
“Disallow: /help”对/help.html 和/help/index.html都不允许搜索引擎访问, 而“Disallow: /help/”则允许robot访问/help.html,而不能访问/help/index.html。
任何一条Disallow记录为空,说明该网站的所有部分都允许被访问,在 “/robots.txt”文件中,至少要有一条Disallow记录。如果“/robots.txt”是一个空文 件,则对于所有的搜索引擎robot,该网站都是开放的。

编辑本段主要作用

有些人会问,既然robots文件没弄好,或出错了,会影响整个网站的收录,那为什么还要这个文件呢?
其实robots是为有特别情况的站长准备的,因为有些网站,有一些页面是站长不想被任何搜索引擎收录的,所以才有了这个robots文件。
robots.txt文件用法举例:
例1、禁止所有搜索引擎访问网站的任何部分
User-agent: *
Disallow: /
例2、允许所有的robot访问
User-agent: *
Disallow:
(或者也可以建一个空文件 "/robots.txt" file)
例3、禁止某个搜索引擎的访问
User-agent: BadBot
Disallow: /
例4、允许某个搜索引擎的访问
User-agent: Baiduspider
Disallow:
User-agent: *
Disallow: /
例5、假设某个网站有三个目录对搜索引擎的访问做了限制,可以这么写:
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /joe/
需要注意的是,对每一个目录必须分开声明,而不要写成:“Disallow: /cgi-bin/ /tmp/”。
User-agent:后的*(通配符) 具有特殊的含义,代表“any robot”,所以在该文件中不能有 “Disallow: /tmp/*” or “Disallow: *.gif ”这样的记录出现。
另外,robots.txt主要作用是保障网络安全与网站隐私,百度蜘蛛遵循robots.txt协议。通过根目录中创建的纯文本文件robots.txt,网站就可以声明哪些页面不想被百度蜘蛛爬行并收录,每个网站都可以自主控制网站是否愿意被百度蜘蛛收录,或者指定百度蜘蛛只收录指定的内容。当百度蜘蛛访问某个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果该文件不存在,那么爬虫就沿着链接抓取,如果存在,爬虫就会按照该文件中的内容来确定访问的范围。

编辑本段一般屏蔽

屏蔽隐私页面,后台登陆页面,缓存页面,图片目录,css目录,模板页面,屏蔽双页面的内容,同时可以屏蔽一些质量比较差的页面,例如金网的所有会员用户空间页面,dz的动态链接也可以设置屏蔽。通过Disallow:命令来进行设置。

编辑本段使用技巧

每当用户试图访问某个不存在的URL时,服务器都会在日志中记录404错误(无法找到文件)。每当搜索蜘蛛来寻找并不存在的robots.txt文件时,服务器也将在日志中记录一条404错误,所以你应该在网站中添加一个robots.txt。
网站管理员必须使搜索引擎机器人程序远离服务器上的某些目录,以保证服务器性能。比如:大多数网站服务器都有程序储存在“cgi-bin”目录下,因此在robots.txt文件中加入“Disallow: /cgi-bin”是个好主意,这样能够避免所有程序文件都被蜘蛛索引,以达到节省服务器资源的效果。
一般网站中不需要蜘蛛抓取的文件有:后台管理文件、程序脚本、附件、数据库文件、编码文件、样式表文件、模板文件、导航图片和背景图片等等。
下面是VeryCMS里的robots.txt文件:
User-agent: *
Disallow: /admin/ 后台管理文件
Disallow: /require/ 程序文件
Disallow: /attachment/ 附件
Disallow: /images/ 图片
Disallow: /data/ 数据库文件
Disallow: /template/ 模板文件
Disallow: /css/ 样式表文件
Disallow: /lang/ 编码文件
Disallow: /script/ 脚本文件
如果你的网站是动态网页,并且你为这些动态网页创建了静态副本,以供搜索蜘蛛更容易抓取。那么你需要在robots.txt文件里设置避免动态网页被蜘蛛索引,以保证这些网页不会被视为是网站重复的内容。
robots.txt文件里还可以直接包括在sitemap文件的链接。就像这样:
Sitemap: http://www.***.com/sitemap.xml
目前对此表示支持的搜索引擎公司有Google, Yahoo, Ask and MSN。而中文搜索引擎公司,显然不在这个圈子内。这样做的好处就是,站长不用到每个搜索引擎的站长工具或者相似的站长部分,去提交自己的sitemap文件,搜索引擎的蜘蛛自己就会抓取robots.txt文件,读取其中的sitemap路径,接着抓取其中相链接的网页。
合理使用robots.txt文件还能避免访问时出错。比如,不能让搜索者直接进入购物车页面。因为没有理由使购物车被收录,所以你可以在robots.txt文件里设置来阻止搜索者直接进入购物车页面。

原创粉丝点击