robots.txt基本介绍:
robots.txt是一个纯文本文件,在这个文件中网站管理者可以告诉搜索引擎蜘蛛该网站的哪些页面是可以抓取的,哪些页面是不许允抓取的。当一个搜索引擎机蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,那么搜索机器人就沿着链接抓取。
另外,robots.txt必须放置在一个站点的根目录下,而且文件名必须全部小写。
下面,我将列举一些robots.txt的具体用法:
允许所有的搜索引擎robot访问网站的任何页面
User-agent: *
Allow: /
或者也可以建一个空文件 “robots.txt” 文件
禁止所有搜索引擎访问网站的任何部分
User-agent: *
Disallow: /
禁止百度搜索引擎蜘蛛访问网站
User-agent: Baiduspider
Disallow: /
只允许谷歌搜索引擎蜘蛛访问网站
User-agent: googlebot
Allow: /
User-agent: *
Disallow: /
禁止所有搜索引擎访问网站A、B、C三个目录
User-agent: *
Disallow: /A/
Disallow: /B/
Disallow: /C/
Robots.txt对于整个栏目禁止,或者有规律的URL禁止,是比较方便和直接的,但对于无任何规则,或者无法使用robots.txt去阻止搜索引擎蜘蛛爬去的时候,可以使用robots meta进行限定。
Robots META标签和其他的META标签(如使用的语言、页面的描述、关键词等)一样,Robots META标签也是放在页面的<head></head>中,专门用来告诉搜索引擎ROBOTS如何抓取该页的内容。
Robots META标签的写法:
Robots META标签中没有大小写之分,name=”robots”表示所有的搜索引擎,可以针对某个具体搜索引擎写为name=”baiduspider”。 content部分有四个指令选项:index、noindex、follow、nofollow,指令间以“,”分隔。
这样,一共有四种组合:
<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>
<META NAME=”ROBOTS” CONTENT=”NOINDEX,FOLLOW”>
<META NAME=”ROBOTS” CONTENT=”INDEX,NOFOLLOW”>
<META NAME=”ROBOTS” CONTENT=”NOINDEX,NOFOLLOW”>
这四个的意思分别是:
抓取该页面并跟随页面上链接;
不抓取该页面但跟随页面上的链接;
抓取该页面但不跟随该页面上的链接;
不抓取该页面且不跟随该页面上的链接。
其中
<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>可以写成<META NAME=”ROBOTS” CONTENT=”ALL”>;<META NAME=”ROBOTS” CONTENT=”NOINDEX,NOFOLLOW”>可以写成<META NAME=”ROBOTS” CONTENT=”NONE”>
而对于google蜘蛛还增加了一个指令“archive”,可以限制GOOGLE是否保留网页快照。
例如:<META NAME=”googlebot” CONTENT=”index,follow,noarchive”>
表示抓取该页面并沿着页面中链接抓取,但是不在GOOLGE上保留该页面的网页快照。
下面我们列举一些常用的robots.txt写法:
您可以使用 robots.txt 文件来阻止 Googlebot 抓取您网站上的网页。 例如阻止 Googlebot 抓取你网站上所有隐私栏目的网页,你的robots.txt可以写成如下:
User-agent: Googlebot
Disallow: /Privacy/
要阻止 Googlebot 抓取特定文件类型(例如“.gif”)的所有文件,可写成如下:
User-agent: Googlebot
Disallow: /*.gif
(其中*号代表任何字符)
要阻止 Googlebot 抓取所有包含 ? 的网址(具体地说,这种网址以您的域名开头,后接任意字符串,然后是问号,而后又是任意字符串),robots.txt可以写成:
User-agent: Googlebot
Disallow: /*?*
一般网站中不需要蜘蛛抓取的文件有:后台管理文件、程序脚本、附件、数据库文件、编码文件、样式表文件、模板文件、导航图片和背景图片等等。
下面是CMS里常用的的robots.txt文件:
User-agent: *
Disallow: /admin/ (后台管理文件)
Disallow: /require/ (程序文件)
Disallow: /attachment/ (附件)
Disallow: /images/ (图片)
Disallow: /data/ (数据库文件)
Disallow: /template/ (模板文件)
Disallow: /css/ (样式表文件)
Disallow: /lang/ (编码文件)
Disallow: /script/ (脚本文件)
对robots.txt仍有疑问的朋友可以在下方留言,一起来探讨交流。