搜索引擎是各大站长IP的主要来源,但仍有一些不足之处,例如,有些特定页面、特定文件、特定目录,我们并不希望被搜索引擎收录,那么如何解决呢?各大搜索引擎也为我们提供了解决的方法,那就是robots.txt文件,robots.txt与搜索蜘蛛交互如何抓取你网的网页,下面说一下关于robots.txt文件。

问题一:robots.txt是什么?

这里引用Baidu作出的回答,robots.txt是一个必须放在根目录底下的纯文本文件,文件名必须全部是小写的字母即“robots.txt”,在这个文件中声明该网站中不想被robot访问的部分,这样,该网站的部分或全部内容就可以不被搜索引擎收录了,或者指定搜索引擎只收录指定的内容。

问题二:robots.txt具体如何使用?

作用1:SEO中引导搜索蜘蛛抓取网站地图,更好地收录网站页面。

现在Google\ Yahoo等国外搜索引擎都已支持在robots.txt文件里指明sitemap文件的链接,在蜘蛛访问robots.txt时告知你网站地图所在的位置,以利于蜘蛛更好地收录你网站的页面。使用语法是sitemap: http://www.qqgzs.com/sitemap.xml(Google)或者是sitemap: http://www.qqgzs.com/sitemap.txt(Yahoo)。其中地图文件你可以使用网站地图制作软件生成,或者你自己编写程序生成。

作用2:禁止所有搜索蜘蛛抓取你网站的所有内容或者是指定目录。在建站实战中有这么几种常见的具体情况:

第一种情况是禁止所有搜索蜘蛛抓取你网站的任何内容。

假如我的网站刚传到服务器上或者虚拟主机上调试,但是由于网站页面标题或者是关键词等还没有优化好,外面又有了网站的外链了,但是还不想让搜索引擎收录时,就可以禁止所有搜索引擎来收录你的任何页面。 

禁止所有搜索引擎收录网站任何页面的语法为:

User-agent: *

Disallow: / 

第二种情况是需要禁止所有搜索引擎抓取网站特定的一些目录。

(1)网站某些目录是程序目录,完全没有被抓取的必要,为了提高服务器性能,避免搜索抓取时消耗服务器资源,可以禁止所有搜索引擎抓取这些目录。(2)网站部分目录是一些会员信息或者是其实敏感,私密性的内容,禁止搜索引擎抓取的。(3)某些目录下的内容全是采集未作任何修改的内容,这部分内容仅是为了丰富内容,但是并不想被搜索引擎收录,这时就需要禁止搜索引擎抓取。(例如我以前做的一个网站,一部分是全原创的内容,用以被搜索抓取的。一部分内容是全采集而来仅为丰富网站内容,提高用户体验的,但是又不想让搜索引擎收录认为是垃圾信息而给网站降权,那么这部分目录我就要屏蔽搜索蜘蛛!)等等其他情况!

禁止所有搜索引擎抓取特定目录或者特定页面的语法例子为:

User-agent: *

Disallow: /plus/count.php

Disallow: /include

Disallow: /news/old 

作用3:禁止某蜘蛛抓取你网站的所有内容。

这里有这么几种情况,(1)你曾严重被baidu降权过、鄙视过、羞辱过,又或者你是反百度联盟的成员,从而要跟它决裂的,要禁止它抓取你网站的任何内容。(2)你的网站已经NB得跟淘宝似的了,要全面禁止百度收录你的页面。大家可以查看下淘宝的robots.txt,淘宝因商业利益等因素已将baidu屏蔽掉,但是由于baiduspider是母的,见马云帅得跟个ET似的,还是厚着脸皮收录了淘宝的内容。大家可以在百度搜索栏里输入site:(taobao.com)验证下。(3)其他任何想禁止某搜索引擎收录你网站所有内容的情况。

禁止某指定搜索引擎抓取你网站任何内容的语法为:

User-agent: baiduspider

Disallow: /

作用4:仅允许指定的搜索蜘蛛抓取你网站的内容。

由于我们网站的流量主要来自几大主要的搜索引擎,你不想国外的或者是国内的其他搜索蜘蛛、流氓蜘蛛 来服务器抓取你网站内容,从而消耗服务器资源,那这个时候,这个语法就起作用了。

仅允许指定的搜索蜘蛛抓取你网站的内容的语法为:

User-agent: baiduspider

Disallow:

User-agent: *

Disallow: /

其中User-agent: baiduspider    Disallow: 可以将你允许的几大搜索蜘蛛都列出来。在此特别需要提醒的是,必须正确书写robots.txt,以免给网站带来不必要的伤害。百度的蜘蛛:baiduspiderGoogle的蜘蛛: Googlebot腾讯Soso:SosospiderYahoo的蜘蛛:Yahoo SlurpMsn的蜘蛛:Msnbot

作用5:禁止所有搜索引擎抓取你网站全部或者特定目录下的特定类型文件。

禁止所有搜索引擎仅允许抓取网页,禁止抓取任何图片。其语法为:

User-agent: *

Disallow: .jpg$

Disallow: .jpeg$

Disallow: .gif$

Disallow: .png$

Disallow: .bmp$

如果是仅禁止特定的搜索引擎,那么按照上面介绍的方法,将通配符*改为特定的蜘蛛名称就可以了。

作用6:禁止搜索引擎在搜索结果中显示网页快照,而只对网页建立索引。

其使用方法为:

百度支持通过设置网页的meta,防止搜索引擎显示网站的快照。方法如下:

要防止所有搜索引擎显示您网站的快照,请将此元标记置入网页的 <HEAD> 部分:<meta name="robots" content="noarchive">要允许其他搜索引擎显示快照,但仅防止百度显示,请使用以下标记:<meta name="Baiduspider" content="noarchive">注:此标记只是禁止百度显示该网页的快照,百度会继续为网页建索引,并在搜索结果中显示网页摘要。如果是Google的话,就是<META NAME="googlebot" CONTENT="index,follow,noarchive">

最后的说明:有些朋友可能启用了站长日志功能,以分析蜘蛛爬取和用户访问情况,蜘蛛来寻找robots.txt文件时,如果寻找不到,服务器也将在日志中记录一条404错误,为了减少log文件,去除无用信息,所以建议你在网站根目录下添加robots.txt,即使是空的robots文件也好。