我们都希望搜索引擎多多收录我们的页面,收录越多越好,但是会存在另一个问题,同一个页面收录多次的话会降低页面的权重,在搜索结果中排名位置不理想。对于所有网站来说,可以使用robots.txt文件来限制搜索引擎的收录情况,对于WordPress来说这也不例外。WordPress提供了自定义路径的功能,比如http://dudo.org/?p=541和http://dudo.org/2010/04/541 实际上是指向的同一个页面,而搜索引擎有时会把它们当作同一个页面,当由于地址不同而重复收录。
重复收录的坏处形象地说:如果一个页面的权重是1,那么如果你收录的内容里有重复的,那么两个页面会变成0.5(仅仅是例子,现实中可能不会这样准确,但是原理差不多)甚至更低,权重低就意味着在搜索结果中出现的位置靠后。所以我们必须剔除重复的链接。
补充知识:什么是robots.txt、robots.txt的语法规则、Google提供的robots.txt知识
为WordPress创建robots.txt
如果你的WordPress空间里没有robots.txt文章可以新建一个,编码格式设置为utf-8(需要注意的是,WordPress默认情况下会自动生成一个robots.txt,不过这个文件是虚拟的)。
在参考了网上几个robots.txt的例子之后,我结合自己的实际情况写了下面一个:
User-agent: *
Disallow: /cgi-bin
Disallow: /wp-*
Allow: /wp-content/uploads/
Disallow: /feed/
Disallow: /comments/feed
Disallow: /trackback
Disallow:/tag/
Disallow:/page/*
Disallow: /comments
Disallow: /category/*/page/*
Disallow: /category/*
Disallow:/duam/
Disallow:/date/
Disallow: /*.php$
Disallow: /*.inc$
Disallow: /*.js$
Disallow: /*.css$
Disallow: /*?*
Disallow: /*?
Disallow: /?s=
Sitemap: http://dudo.org/sitemap.xml
Sitemap: http://dudo.org/sitemap.xml.gz
简单说一下,WordPress目录下,除了保存的附件的/wp-content/uploads/目录外,其他实体目录都不允许访问,而虚拟目录/page/、/data/、/category/等会造成重复收录,同时我们还要禁止所有php、js、css等文件的收录,因为这些文件和我们网站的内容没有任何关系;此外,/*?*、/*?等是禁止所有带参数的链接(因为我的页面链接都是目录形式的,如果你的是使用参数形式的这里设置要谨慎。)最后两行是告诉搜索引擎你的网站地图,便于收录(其实只要一个就行了,而且要安装了Google XML sitemap插件)。
测试WordPress中的Robots.txt
在WordPress中创建好robots.txt后,你可以通过Google站长管理工具来测试和管理你的robots.txt文件,听说百度也要出百度站长管理工具了,将来也可以通过它来管理,其实我们网站搜索引擎的流量也主要来自这两个。
在Google站长管理工具中“网站配置->抓取工具权限”下,你会看到Google已经抓取并显示了wordpress下的robots.txt里面的内容,我们可以在下面的条件测试中依次输入不同的网址形式来看结果(这个过程也有利于防止出现因为robots.txt规则太多而出现的抓取错误)。下面是我测试的一个例子:
在这个测试结果中我们可以看到哪条规则对测试的链接方式起作用,同时我们也可以看到哪些链接形式是允许的,哪些是禁止的,经过多次测试我们可以达到最佳robots.txt效果。
抢个沙发 哈哈 在学习一下 呵
[回复]
设置的多了会引起抓取错误 。
[回复]
dudo 回复:
七月 16th, 2010 at 09:29
@阿邙, 嗯,这个需要多次测试,补充了一下内容
[回复]
我用的年月日形式,不晓得应该屏蔽那些。。管他按别人的填了一下,那个sitemap好像对百度无效。。
[回复]
草儿 回复:
七月 16th, 2010 at 16:20
@Mucid, 貌似百度不管sitemap
[回复]
dudo 回复:
七月 17th, 2010 at 00:29
@Mucid, sitemap对百度来说效果不明显,百度就是一个白痴,真的
[回复]
Mucid 回复:
七月 17th, 2010 at 06:05
@dudo, HoHO这个形容太形象鸟!!
[回复]
这个我还没设置过哦!
[回复]
dudo 回复:
七月 17th, 2010 at 00:29
@WordPress啦, 应该试试,没有设置过意味着你的博客内容有很多重复
[回复]
这个太专业了
[回复]
dudo 回复:
七月 17th, 2010 at 00:29
@先看看, 越专业的东西,越有助于提高自己的水平
[回复]
借鉴
[回复]
挺专业,学习了!
[回复]
有个疑惑。
google只能添加sitemap.xml文档作为站点地图,不能用sitemap.html是吗?
而yahoo却支持html的。。。
[回复]
dudo 回复:
七月 17th, 2010 at 00:30
@zchiy2k, 这个倒是没有注意,但是sitemap一般应该是xml格式的,也就是文本格式,比HTML格式更容易理解
[回复]
这外我知道点皮毛。
[回复]
终于搞这个了?
[回复]
dudo 回复:
七月 18th, 2010 at 21:10
@老七, 嗯,呵呵 最近研究了你们的几个的博客,哈哈…… 感觉的确很需要…… 不过效果要过一段时间才能看出来
[回复]
嘿嘿,第一次来 ^_^)y ~~
额,是不是搜索引擎对每一个网站的收录都是有一定数量的,所以通过这个方法来提高收录质量?
[回复]
dudo 回复:
七月 19th, 2010 at 22:26
@小邪, :-) 以后就可以常来了,嘿嘿
[回复]
dudo 回复:
七月 19th, 2010 at 22:26
@小邪, 对数量倒是没有限制,但是内容相同的页面影响收录质量,特别是同一个页面有多个链接形势的
[回复]
学习并使用,谢了
[回复]
学习了““终于找到这篇文章了““谢谢分享
[回复]
不知道为什么,流量统计里显示来自搜索引擎的只有来自谷歌的,百度一个都没有 … 不知道什么原因啊 =。= 真杯具 T_T
[回复]
dudo 回复:
一月 5th, 2011 at 17:40
可能你的网站被百度K了,site一下看看收录情况怎么样?
[回复]
已经参考你的测试robot.txt,并设置好了
[回复]
不错的技巧
[回复]