博客已经成功切换为 Wordpress! My blog has been switched to Wordpress!

robots.txt 文件的写法与误区

技术分享 edwardfang 7年前 (2011-09-27) 124次浏览 4个评论

谈到 robots.txt 文件的写法可谓是老话长谈了,不论你做或者不做 SEO 只要你想让网站更好的被搜索引擎收录,就必须了解这个文件的写法,以及 robots.txt 规则中常见的误区,要是不懂 robots 文件很多的博主都会把收录不好归咎在 robots.txt 文件上搞的自己是一头雾水,昨天在群里跟各位博主聊了会发现很多博主的 robots 文件都是复制别的站的,而对 robots 的规则都不是很了解,昨天就遇到一位博主的 robots 文件中居然这样写的(就拿一生有你博客的地图为例)Sitemap: http://www.huiwei19.com/sitemap.xml 把百度地图谷歌地图还有雅虎地图都写到 robots 文件里引导蜘蛛爬行搜索更多的页面,认为这样搜索引擎就可以收录很多页面了,这就犯了 SEO 中很严重的误区了,回味依旧下面公布一些 robots 文件的写法与误区,希望对各位博主的网站优化能起到很好的作用。

首先来谈下 robots 文件的误区

误区一.很多博主认为我的博客想被搜索引擎全部抓取,所以就没必要用 robots 文件了,这样是不对的,因为不论我们用什么样的博客程序都会有很多没用的目录以及脚本不需要被蜘蛛爬行,要是不设置 robots 蜘蛛会在网站漫无目的的爬行,像一只无头的苍蝇,而搜索引擎爬行你的网站浪费大量的时间就会停止爬行,甚至以后就不会在爬行了,而且收录的都是没有用的脚本文件,而且搜索引擎也会收录其站点上的 404 页面,相信博主肯定也不爽吧。

误区二.认为我在 robots 文件里把百度地图谷歌地图都写进去,这样就能让搜索引擎收录更多的网页,这样更是打错特错,robots 的作用就是为了引导蜘蛛爬行到网站地图上举个例子,蜘蛛很辛苦的爬行了你的所有网站地图浪费了很大的资源,但是发现自己爬行的网页都是重复的,就像小学时候写不了字母老师罚你写 aaabbbccc 写十遍一样,重复页面一多时间长了也会遭到搜索引擎的降权。

误区三.为了让搜索引擎收录更多的网页,把 robots 文件设置成允许蜘蛛爬行任何网页。其实我们的网站中有很多文件目录脚本都是没必要被蜘蛛抓取的,就拿回味依旧博客来说,回味依旧用的是 emlog 博客程序,其中 admin、includes、某些文件、大量 css、js、php、以及其他格式都没必要让蜘蛛爬行的,蜘蛛爬行这么多文件会浪费服务器很大的资源,也会减少对其他文章页面的爬行的几率。所以禁止了这么文件才能提高文章页面的曝光率。

误区四.既然搜索引擎抓取这么多网页文件会浪费这么服务器资源,那我用的虚拟主机性能不怎么样为什么不禁止蜘蛛抓取所有页面呢,如果这样以来你的网站就不会出现在搜索引擎中了,更不会被搜索引擎收录,所以做一个属于自己网站的 robots 是很有必要的。

下面回味依旧就教大家一些 robots 文件的写法。

User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符
Disallow: /admin/ 这里定义是禁止爬寻 admin 目录下面的目录
Disallow: /require/ 这里定义是禁止爬寻 require 目录下面的目录
Disallow: /ABC/ 这里定义是禁止爬寻 ABC 整个目录
Disallow: /cgi-bin/*.htm 禁止访问/cgi-bin/目录下的所有以”.htm”为后缀的 URL(包含子目录)。
Disallow: /*?* 禁止访问网站中所有的动态页面
Disallow: /jpg$ 禁止抓取网页所有的.jpg 格式的图片
Disallow:/ab/adc.html 禁止爬去 ab 文件夹下面的 adc.html 文件。
User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符
Allow: /cgi-bin/ 这里定义是允许爬寻 cgi-bin 目录下面的目录
Allow: /tmp 这里定义是允许爬寻 tmp 的整个目录
Allow: .htm$ 仅允许访问以”.htm”为后缀的 URL。

Allow: .gif$ 允许抓取网页和 gif 格式图片 robots.txt 文件用法举例


就拿回味依旧博客的 robots.txt 为例。

[cceN_html theme=”mac-classic”]
User-agent: *
Disallow: /admin*
Disallow: /feed/
Disallow: */feed/
Disallow: */trackback/
Disallow: /*.php$
Disallow: /*.inc$
Disallow: /*.js$
Disallow: /*.css$
Disallow: /?s=

Sitemap: http://www.huiwei19.com/sitemap.xml


大家这样看应该就会一目了然了吧,之所以屏蔽掉 Disallow: /wp 文件是由于回味依旧用的 emlog 系统这么多文件都没用,还有 feed 之所一屏蔽 feed 是因为这样就跟放了两个网站地图效果一样,会增加重复收录页面,然后就是一些 php inc js css。最后引导蜘蛛爬行到到一生有你博客的网站地图上,由于大家用的博客系统刚创建的时候基本都是动态 IP,之后都做了伪静态,或者是用 Linux 主机做的,所以都必须做上这个 Disallow: /?s= 禁止蜘蛛爬行动态 IP 页面,这样也避免了重复收录的情况,有的博主就会纳闷,为什么我昨天一天百度就收录了几十个页面,但是今天又消失了,这就是重复收录的原因,还有博主说百度搜索引擎经常收录自己文章的留言,这个是因为没用做 Disallow: /*?*禁止蜘蛛爬行动态页面,如果还有什么不懂可以留言给我,大家一起交流学习。


回味依旧 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:robots.txt 文件的写法与误区
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(4)个小伙伴在吐槽
  1. 学习了,谢谢分享
    老五2011-09-29 15:50 回复
  2. 收藏了!
    生命线影院2011-09-25 22:42 回复
  3. Disallow: /?s= 我现在好像就面临这个问题。 www.zhangby.com/robots.txt site:www.zhangby.com 你有空帮我看一眼,我是不是要把Disallow: /?s=加上
    张无计2011-09-25 22:00 回复