竹影清风做网站也有些年头了,应各位站长朋友的要求今天跟各位分享一点我的点滴经验。今天的话题重点是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.##.com/sitemap.xml(Google)或者是sitemap: http://www.##.com/sitemap.txt(Yahoo)。其中地图文件你可以使用网站地图制作软件生成,或者你自己编写程序生成。
作用2:禁止所有搜索蜘蛛抓取你网站的所有内容或者是指定目录。在建站实战中有这么几种常见的具体情况:
第一种情况是禁止所有搜索蜘蛛抓取你网站的任何内容。
假如我的网站刚传到服务器上或者虚拟主机上调试,但是由于网站页面标题或者是关键词等还没有优化好,外面又有了网站的外链了,但是还不想让搜索引擎收录时,就可以禁止所有搜索引擎来收录你的任何页面。
在这里我举一个反面的例子,06我建了某个网站,使用了织梦的内容管理程序,第一次套用了一个模板,加了些内容就兴奋地向各搜索引擎提交了,第二天就被搜索引擎收录了,再过了几天也放出了几百篇内容,但是后来我又找了一套更漂亮清新的模板,改了下又重新生成了所有页面,如此地改动了好几次。由于各搜索的蜘蛛都是母的,网站页面经常改动,特别是title等重要属性的改动让她很没有安全感,对网站产生了严重的不信任,结果我的网站页面过了一两个月才恢复过来。所以各位站长在网站上线对搜索开放之前一定要找准了网站定位,并且在优化好了以后再向搜索引擎开放不迟。
又例如你的网站仅是你跟你恋人的恋爱家园,仅仅是你们自娱自乐的,而不想被抓取的,又例如你的网站是公司内部用的网站,是全隐秘的内容,不需要对任何蜘蛛抓取的,又或者任何其他的具体情况要禁止任何搜索引擎抓取的。
禁止所有搜索引擎收录网站任何页面的语法为:
User-agent: *
Disallow: /
第二种情况是需要禁止所有搜索引擎抓取网站特定的一些目录。
(1)网站某些目录是程序目录,完全没有被抓取的必要,为了提高服务器性能,避免搜索抓取时消耗服务器资源,可以禁止所有搜索引擎抓取这些目录。(2)网站部分目录是一些会员信息或者是其实敏感,私密性的内容,禁止搜索引擎抓取的。(3)某些目录下的内容全是采集未作任何修改的内容,这部分内容仅是为了丰富内容,但是并不想被搜索引擎收录,这时就需要禁止搜索引擎抓取。(例如我以前做的一个网站,一部分是全原创的内容,用以被搜索抓取的。一部分内容是全采集而来仅为丰富网站内容,提高用户体验的,但是又不想让搜索引擎收录认为是垃圾信息而给网站降权,那么这部分目录我就要屏蔽搜索蜘蛛!)等等其他情况!
禁止所有搜索引擎抓取特定目录或者特定页面的语法例子为:
User-agent: *
Disallow: /plus/count.php
Disallow: /include
Disallow: /news/old
大家有兴趣的话,可以到竹影清风新上线的dianzhu2.com去查看下我的robots.txt,里面有一些具体的例子说明。
作用3:禁止某蜘蛛抓取你网站的所有内容。
这里有这么几种情况,(1)你曾严重被baidu降权过、鄙视过、羞辱过,又或者你是反百度联盟的成员,从而要跟它决裂的,要禁止它抓取你网站的任何内容。(2)你的网站已经NB得跟淘宝似的了,要全面禁止百度收录你的页面。大家可以查看下淘宝的robots.txt,淘宝因商业利益等因素已将baidu屏蔽掉,但是由于baiduspider是母的,见马云帅得跟个ET似的,还是厚着脸皮收录了淘宝1060篇左右的内容。大家可以在百度搜索栏里输入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文件也好。
其他更多的用法,有待于各位结合实战慢慢总结。
新闻热点
疑难解答