宝鸡网站建设公司
网站禁止和收录机制
时间:2012-04-10 11:35
次来源:未知
有的时候,站长并不希望某些页面被搜索引擎抓取和收录,如付费内容,还有测试阶段的页面,复制内容页面等。网站上不出现链接,或使用JavasScript、Flashl链接、使用nofollow等方法都不能保证页面一定不被收录。站长自己虽然没有链接到不想被收录的页面,其他网站可能由于某种原因出现导入链接,导致页面被收录。
要确保页面不被收录,需要使用robots文件或Meta Robots标签。
http://www.baidu.com/robots.txt
只有在需要禁止抓取某些内容时,写robots.txt才有意义。Robots文件不存在或者是空文件都意味着允许搜索引擎抓取所有内容。有的服务器设置有问题,robots文件不存在时会返回200状态码及一些错误信息,而不是404状态码,这有可能使搜索引擎错误解读robots文件信息,所以建议就算允许抓取所有内容,也要建立一个robots.txt文件,放在根目录下。
robots文件由记录组成,记录之间以空行分开。记录格式为:
<域>:<可选空格><值域><可选空格>
最简单的robots文件:
User-agent:*
Disallow:/
上面这个robots文件禁止所有搜索引擎抓取任何内容。
User-agent:指定下面的规则适用于哪个蜘蛛。通配符*代表所有搜索引擎。只适用于百度的蜘蛛则用:
User-agent:Baiduspider
只适用于Google的蜘蛛则用:
User-agent:Googlebot
Disallow:告诉蜘蛛不要抓取某些文件或目录。例如下面的代码将阻止所有的蜘蛛抓取/cgi-bin/和/tmp/两个目录下的内容及文件/aa/index.html:
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /aa/index.html
Disallow:禁止的目录或文件必须分开写,每个一行,不能写成:
Disallow: /cgi-bin/ /tmp/ /aa/ index.html
下面的指令相当于允许所有的搜索引擎抓取任何类容:
User-agent: *
Disallow:
下面的代码禁止除百度外的所有搜索引擎抓取任何内容:
User-agent: Baiduspiser
Disallow:
User-agent: *
Disallow: /
Allow: 告知蜘蛛应该抓取某些文件。由于不指定就是允许抓取,Allow:单独写没有意义,Allow和Disallow配合使用,可以告诉蜘蛛某个文件下大部分不允许抓取,只允许抓取一部分。例如,下面代码将使蜘蛛不抓取/ab/目录下其他目录和文件,但允许抓取其中/cd/目录下的内容:
Dser-agent:
Disallow: /ab/
Allow:/ab/cd/
$通配符:匹配URL结尾的字符。例如,下面一段代码将禁止蜘蛛抓取以.htm为后缀的URL:
User-agenter: *
Allow: .htm$
下面的代码将禁止百度抓取所有.JPG文件:
User-agent:Baiduspider
Disallow: .jpg$
*通配符:告诉蜘蛛匹配任何一段字符。例如,下面一段代码将静止蜘蛛抓取所有的htm文件:
User-agent: *
Disallow: /*.htm
Sitemaps 位置:告诉蜘蛛XML网站地图在哪里,格式为:
Sitemap:<网站地图位置>
主流搜索引擎都遵守robots文件指令,robots.txt禁止抓取的文件搜索引擎将不访问,不抓取。但要注意的是,被robots文件禁止抓取的URL还是可能出现在搜索结果中。只要有导入链接指向这个URL,搜索引擎就知道这个URL的存在,虽然不会抓取页面的内容,但是可能以下面几种形式显示在搜索引擎结果中:
(1)只显示URL,但没有标题、描述。Google常这样处理。
(2)显示开放目录或雅虎等重要目录收录的标题和描述。
(3)导入链接的锚文字显示为标题和描述。百度常这样处理。
要想使URL完全不出现在搜索结果中,需要使用页面上的meta robots标签。
2.meta robots 标签
Meta robots标签是页面head部分meta标签的一种,用于指令搜索引擎禁止搜索本页
最简单的meta robots标签格式为:
<meta name=”robots” content=”noindex,nofollow”>
上面标签的意义是禁止搜有搜索引擎索引本页,静止跟踪本页上面的链接。
Google、必应、雅虎都支持的meta robots标签如下。
Meta robots标签内容可以写在一起,以逗号间隔,中间可以有空格,也可以没有。多个meta robots标签内容也可以写成不同标签。
<META NAME=”ROBOTS”CONTENT=”NOINDEX”>
<META NAME=”ROBOTS” CONTENT=” NOFOLLOW”>
与下面这个是一样的:
<META NAME=”ROBOTS” CONTENT=”NOINDEX,NOFOLLOW”>
Meta robots标签不区分大小写。
只有静止索引时,使用 meta robots才有意义。一下这个标签:
<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>
是没有意义的,等于没写。普通需求被收录、索引,链接需要被跟踪的页面,不用写meta robots标签。
这个标签有时会用到:
<meta name=”robots” content=”noindex”>
效果是禁止索引本页面,但允许蜘蛛跟踪上面的链接,也可以传递权重。
使用了noindex meta robots标签的页面会被抓取,但不会被索引,页面URL不会出现在搜索结果中,这一点与robots文件不同。
要确保页面不被收录,需要使用robots文件或Meta Robots标签。
- Robots文件
http://www.baidu.com/robots.txt
只有在需要禁止抓取某些内容时,写robots.txt才有意义。Robots文件不存在或者是空文件都意味着允许搜索引擎抓取所有内容。有的服务器设置有问题,robots文件不存在时会返回200状态码及一些错误信息,而不是404状态码,这有可能使搜索引擎错误解读robots文件信息,所以建议就算允许抓取所有内容,也要建立一个robots.txt文件,放在根目录下。
robots文件由记录组成,记录之间以空行分开。记录格式为:
<域>:<可选空格><值域><可选空格>
最简单的robots文件:
User-agent:*
Disallow:/
上面这个robots文件禁止所有搜索引擎抓取任何内容。
User-agent:指定下面的规则适用于哪个蜘蛛。通配符*代表所有搜索引擎。只适用于百度的蜘蛛则用:
User-agent:Baiduspider
只适用于Google的蜘蛛则用:
User-agent:Googlebot
Disallow:告诉蜘蛛不要抓取某些文件或目录。例如下面的代码将阻止所有的蜘蛛抓取/cgi-bin/和/tmp/两个目录下的内容及文件/aa/index.html:
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /aa/index.html
Disallow:禁止的目录或文件必须分开写,每个一行,不能写成:
Disallow: /cgi-bin/ /tmp/ /aa/ index.html
下面的指令相当于允许所有的搜索引擎抓取任何类容:
User-agent: *
Disallow:
下面的代码禁止除百度外的所有搜索引擎抓取任何内容:
User-agent: Baiduspiser
Disallow:
User-agent: *
Disallow: /
Allow: 告知蜘蛛应该抓取某些文件。由于不指定就是允许抓取,Allow:单独写没有意义,Allow和Disallow配合使用,可以告诉蜘蛛某个文件下大部分不允许抓取,只允许抓取一部分。例如,下面代码将使蜘蛛不抓取/ab/目录下其他目录和文件,但允许抓取其中/cd/目录下的内容:
Dser-agent:
Disallow: /ab/
Allow:/ab/cd/
$通配符:匹配URL结尾的字符。例如,下面一段代码将禁止蜘蛛抓取以.htm为后缀的URL:
User-agenter: *
Allow: .htm$
下面的代码将禁止百度抓取所有.JPG文件:
User-agent:Baiduspider
Disallow: .jpg$
*通配符:告诉蜘蛛匹配任何一段字符。例如,下面一段代码将静止蜘蛛抓取所有的htm文件:
User-agent: *
Disallow: /*.htm
Sitemaps 位置:告诉蜘蛛XML网站地图在哪里,格式为:
Sitemap:<网站地图位置>
主流搜索引擎都遵守robots文件指令,robots.txt禁止抓取的文件搜索引擎将不访问,不抓取。但要注意的是,被robots文件禁止抓取的URL还是可能出现在搜索结果中。只要有导入链接指向这个URL,搜索引擎就知道这个URL的存在,虽然不会抓取页面的内容,但是可能以下面几种形式显示在搜索引擎结果中:
(1)只显示URL,但没有标题、描述。Google常这样处理。
(2)显示开放目录或雅虎等重要目录收录的标题和描述。
(3)导入链接的锚文字显示为标题和描述。百度常这样处理。
要想使URL完全不出现在搜索结果中,需要使用页面上的meta robots标签。
2.meta robots 标签
Meta robots标签是页面head部分meta标签的一种,用于指令搜索引擎禁止搜索本页
最简单的meta robots标签格式为:
<meta name=”robots” content=”noindex,nofollow”>
上面标签的意义是禁止搜有搜索引擎索引本页,静止跟踪本页上面的链接。
Google、必应、雅虎都支持的meta robots标签如下。
- NOINDEX:告诉蜘蛛不要索引本页
- NOFOLLOW:告诉蜘蛛不要索引本页上的链接
- NOSNIPPET:告诉搜索引擎不要再搜索结果中显示说明文字。
- NOarchive:告诉搜索引擎不要显示快照。
- NOODP:告诉搜索引擎不要使用开放目录中的标题和说明。
Meta robots标签内容可以写在一起,以逗号间隔,中间可以有空格,也可以没有。多个meta robots标签内容也可以写成不同标签。
<META NAME=”ROBOTS”CONTENT=”NOINDEX”>
<META NAME=”ROBOTS” CONTENT=” NOFOLLOW”>
与下面这个是一样的:
<META NAME=”ROBOTS” CONTENT=”NOINDEX,NOFOLLOW”>
Meta robots标签不区分大小写。
只有静止索引时,使用 meta robots才有意义。一下这个标签:
<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>
是没有意义的,等于没写。普通需求被收录、索引,链接需要被跟踪的页面,不用写meta robots标签。
这个标签有时会用到:
<meta name=”robots” content=”noindex”>
效果是禁止索引本页面,但允许蜘蛛跟踪上面的链接,也可以传递权重。
使用了noindex meta robots标签的页面会被抓取,但不会被索引,页面URL不会出现在搜索结果中,这一点与robots文件不同。