Categories


Tags


Robots文件的作用和规范写法

控制页面的抓取、索引是SEO优化网站结构时经常需要用到的技术。常见的工具包括:

robots文件

页面的noindex标签

链接的nofollow属性

页面的301转向

页面的canonical标签等

这几个工具各有各的特定应用场景,但都是用于控制网站内部结构,之间容易混淆,还经常需要配合使用,SEO们必须准确理解这几个工具的机制和原理,不然很容易出错。

这篇贴子讨论robots文件。

Robots文件的作用

robots文件是一个放置在域名(或子域名)根目录下的、文件名固定为robots.txt的(全部小写)、UTF8编码的、纯ASCII文本文件,用来通知搜索引擎,网站的哪些部分可以抓取,哪些禁止抓取。robots.txt只对所在的域名(或子域名)、协议和端口号起作用。

搜索引擎蜘蛛在抓取网站页面前,会先看一下robots.txt的内容,哪些页面可以抓取,哪些页面被站长禁止抓取。当然,是否遵守robots文件的规则就靠自觉了,某些坏蜘蛛就不遵守,站长是没办法的,比如采集内容的、克隆网站的。

所以,robots.txt文件是站长禁止搜索引擎抓取某些页面的指令。但是要注意,页面没有被抓取,不意味着页面就不会被索引和收录,这是两个概念。详情参考爬行、抓取、索引的概念介绍贴子。

怎样写Robots文件

Robots文件的每行记录均由一个字段、一个冒号和一个值组成,标准格式是:

<field>:<optional space><value><optional space><#optional-comment>

其中<optional space>指的是可以加一个空格,但不是必须,通常建议加这个空格,比较容易读。

<#optional-comment>是另一个可选项,用于写些注释。

通常robots文件中的记录通常以User-agent开始,后面加上若干Disallow和Allow行。User-agent指定本记录用于哪个搜索引擎蜘蛛,Disallow是指定禁止抓取的文件或目录,Allow是指定允许抓取的文件或记录。

所有搜索引擎都支持的robots文件记录包括:

Disallow – 告诉蜘蛛不要抓取某些文件或目录。如下面代码将阻止所有蜘蛛抓取所有的网站文件:

User-agent: *

Disallow: /

Allow – 告诉蜘蛛应该抓取某些文件。Allow和Disallow配合使用,可以告诉蜘蛛某个目录下,大部分都不抓取,只抓取一部分。如下面代码将使蜘蛛不抓取ab目录下其他文件,而只抓取其中cd下的文件:

User-agent: *

Disallow: /ab/

Allow: /ab/cd

$通配符 – 匹配URL结尾的字符。如下面代码将允许蜘蛛访问以.htm为后缀的URL:

User-agent: *

Allow: .htm$

*通配符 – 告诉蜘蛛匹配任意一段字符。如下面一段代码将禁止所有蜘蛛抓取所有htm文件:

User-agent: *

Disallow: /*.htm

Sitemaps位置 – 告诉蜘蛛你的网站地图在哪里,格式为:

Sitemap: <sitemap_location>

Robots文件的注意事项

另外提醒大家注意的是,robots.txt文件可以不存在,返回404错误,意味着允许蜘蛛抓取所有内容。但抓取robots.txt文件时却发生超时之类的错误,可能导致搜索引擎不收录网站,因为蜘蛛不知道robots.txt文件是否存在或者里面有什么内容,这与确认文件不存在是不一样的。

另外,如果robots.txt文件不存在,而404页面上包含一些URL,可能会造成搜索引擎误将404页面的内容当作robots文件的内容,导致无法预测的后果。所以,即使想开放所有搜索引擎蜘蛛抓取所有内容,也最好放一个robots文件,哪怕是空的文件。

Robots文件的检测

写好robots文件后如果不确定是否写得正确,可以用搜索引擎官方工具检测验证。如百度资源平台的robots文件验证工具 https://ziyuan.baidu.com/robots/index

robots文件检测验证工具

输入网址后,验证工具会告诉你这个URL是否允许被抓取。

掌握robots文件用法和写法是SEO的基本功。遇到页面不被收录或收录骤降,robots文件也是第一个要检查的。

来源:seo每天一贴 Zac 昝辉


Public @ 2012-12-30 16:09:20

我希望我的网站内容被百度索引但不被保存快照,我该怎么做?

我希望我的网站内容被百度索引但不被保存快照,我该怎么做?Baiduspider遵守互联网meta robots协议。您可以利用网页meta的设置,使百度显示只对该网页建索引,但并不在搜索结果中显示该网页的快照。和robots的更新一样,因为搜索引擎索引数据库的更新需要时间,所以虽然您已经在网页中通过meta禁止了百度在搜索结果中显示该网页的快照,但百度搜索引擎数据库中如果已经建立了网页索引信息,可

Public @ 2014-06-20 16:08:58

什么是死链&;死链的标准

页面已经无效,无法对用户提供任何有价值信息的页面就是死链接,包括协议死链和内容死链两种形式:1)协议死链:页面的TCP协议状态/HTTP协议状态明确表示的死链,常见的如404、403、503状态等。2)内容死链:服务器返回状态是正常的,但内容已经变更为不存在、已删除或需要权限等与原内容无关的信息页面。目前内容死链召回存在召回率的风险,所以建议各位站长尽量使用协议死链,以保证平台工具更好地发挥其作用

Public @ 2011-08-11 15:36:58

玩转robots协议

2013年2月8日北京市第一中级人民法院正式受理了百度诉奇虎360违反“Robots协议”抓取、复制其网站内容的不正当竞争行为一案,索赔金额高达一亿元,这可以看做2012年下半年“3B大战”的继续。在此次索赔案件中,百度称自己的Robots文本中已设定不允许360爬虫进入,而360的爬虫依然对“百度知道”、“百度百科”等百度网站内容进行抓取。其实早在2012年11月初,针对双方摩擦加剧的情况,在中

Public @ 2019-05-13 16:09:21

禁止搜索引擎收录的方法

1. 什么是robots.txt文件?搜索引擎使用spider程序自动访问互联网上的网页并获取网页信息。spider在访问一个网站时,会首先会检查该网站的根域下是否有一个叫做 robots.txt的纯文本文件,这个文件用于指定spider在您网站上的抓取范围。您可以在您的网站中创建一个robots.txt,在文件中声明 该网站中不想被搜索引擎收录的部分或者指定搜索引擎只收录特定的部分。请注意,仅当

Public @ 2015-10-28 16:08:55

更多您感兴趣的搜索

0.506807s