首先我们建立一个空白的文本文档,命名为robots.txt放在网站的根目录下即可,规则写法如下:
本文中会用到的搜索引擎名称请查看这个链接:各大搜索引擎蜘蛛名称
1、如果允许所有搜索引擎访问网站的所有部分
robots.txt写法如下:
User-agent: *
Disallow:
或者
User-agent: *
Allow: /
2、如果我们禁止所有搜索引擎访问网站的所有部分
robots.txt写法如下:
User-agent: *
Disallow: /
3、如果我们需要禁止某一个搜索引擎的抓取的话,比如百度,禁止百度索引我们的网站
robots.txt写法如下:
User-agent: Baiduspider
Disallow: /
4、如果我们禁止Google索引我们的网站的话,其实跟示例3一样,就是User-agent:头文件的蜘蛛名字改成谷歌的Googlebot即可
robots.txt写法如下:
User-agent: Googlebot
Disallow: /
5、如果我们只允许百度搜索引擎索引我们的网站,其他搜索引擎都不许索引
robots.txt写法如下:
User-agent: Baiduspider
Disallow:
User-agent: *
Disallow: /
6、如果我们禁止除Google外的一切搜索引擎索引我们的网站的话,写法同上
robots.txt写法如下:
User-agent: Googlebot
Disallow:
User-agent: *
Disallow: /
7、如果我们需要禁止蜘蛛访问某个目录,比如禁止css、images等目录被索引
robots.txt写法如下:
User-agent: *
Disallow: /css/
Disallow: /images/
8、如果我们禁止蜘蛛访问我们网站的某个目录,但允许索引这个目录下的某个子目录
robots.txt写法如下:
User-agent: *
Disallow: /css/
Disallow: /images/
Allow: /css/aaa
Allow: /images/bbb
这样写就禁止蜘蛛抓取css目录,但是允许抓取css目录里面的aaa目录
有些robots.txt里的Disallow或者Allow会有很多的符号,比如问号星号什么的,这些具体有什么作用呢?我们接着往下看...
9、如果使用星号“*”,主要作用是限制访问某个后缀的域名,比如禁止访问/html/目录下的所有以".html"为后缀的URL(包含子目录)
robots.txt写法如下:
User-agent: *
Disallow: /html/*.html
10、如果我们使用“$”,这个符号表示只允许访问某目录下某个后缀的文件
robots.txt写法如下:
User-agent: *
Allow: /*.asp$
Allow: /*.html$
Disallow: /
这样写就禁止了搜索引擎索引整个网站,但是允许索引收录网站里面所有以.asp和.html结尾的文件
11、如果我们禁止搜索引擎索引网站中所有的动态页面(这里限制的是带有“?”的url,例如index.asp?id=1或者index.php?id=1)
(注意:这个问号必须是英文状态下的问号,很多新手站长写成了中文状态下的问号是没有效果的)
robots.txt写法如下:
User-agent: *
Disallow: /*?*
PS:有些时候,我们为了节省服务器资源,需要禁止各类搜索引擎来索引我们网站上的图片,这里的办法除了使用“Disallow: /images/”这样的直接屏蔽文件夹的方式之外,还可以采取直接屏蔽图片后缀名的方式,往下看。
12、如果我们禁止Google搜索引擎抓取我们网站上的所有图片(如果你的网站有使用其他后缀的图片名称,在这里也可以直接添加)
robots.txt写法如下:
User-agent: Googlebot
Disallow: /*.jpg$
Disallow: /*.jpeg$
Disallow: /*.gif$
Disallow: /*.png$
Disallow: /*.bmp$
13、同样规则,如果我们想要禁止百度搜索引擎抓取我们网站上的所有图片
robots.txt写法如下:
User-agent: Baiduspider
Disallow: /*.jpg$
Disallow: /*.jpeg$
Disallow: /*.gif$
Disallow: /*.png$
Disallow: /*.bmp$
14、如果想要除了百度和Google之外,禁止其他搜索引擎抓取你网站的图片的话,这样写
(注意:在这里为了让各位新手站长看的更明白,因此使用一个比较笨的办法——对于单个搜索引擎单独定义。)
robots.txt写法如下:
User-agent: Baiduspider
Allow: /*.jpeg$
Allow: /*.gif$
Allow: /*.png$
Allow: /*.bmp$
User-agent: Googlebot
Allow: /*.jpeg$
Allow: /*.gif$
Allow: /*.png$
Allow: /*.bmp$
User-agent: *
Disallow: /*.jpg$
Disallow: /*.jpeg$
Disallow: /*.gif$
Disallow: /*.png$
Disallow: /*.bmp$
15、仅仅允许百度抓取网站上的“jpg”格式文件(其他搜索引擎的办法也和这个一样,只是修改一下搜索引擎的蜘蛛名称即可)
robots.txt写法如下:
User-agent: Baiduspider
Allow: /*.jpg$
Disallow: /*.jpeg$
Disallow: /*.gif$
Disallow: /*.png$
Disallow: /*.bmp$
16、仅仅禁止百度抓取网站上的“jpg”格式文件
robots.txt写法如下:
User-agent: Baiduspider
Disallow: /*.jpg$
17、如果问号“?”表示一个会话ID,我们可排除所有包含该ID的网址,确保搜索引擎不会抓取重复的网页。但是,以问号“?”结尾的网址可能是您要包含的网页版本。在此情况下,我们可以与Allow指令配合使用
robots.txt写法如下:
User-agent:*
Allow: /*?$
Disallow: /*?
写法解析:
Disallow: /*? 将会禁止抓取任何包含“?”的网址(具体而言,它将拦截所有以您的域名开头、之后接任意字符串、再然后是问号“?”、而后又是任意字符串的网址)。
Allow: /*?$ 将允许包含任何以“?”结尾的网址(具体而言,它将允许包含所有以您的域名开头、后接任意字符串,然后是问号“?”,问号之后没有任何字符的网址)。
18、如果我们想禁止搜索引擎对一些目录或者某些URL访问的话,可以截取部分的名字
robots.txt写法如下:
User-agent:*
Disallow: /abc/index.php?
这样就禁止收录索引abc目录下所有包含index.php的网址