X-Robots-Tag标头与机器人元标记的优先级

时间:2013-07-29 17:57:29

标签: header meta-tags robot nofollow noindex

我在我的vhost配置中放置了以下Header

Header set X-Robots-Tag "noindex, nofollow"

这里的目标是禁止搜索引擎索引我的测试环境。该网站是Wordpress,并安装了一个插件来管理每页元机器人设置。例如:

<meta name="robots" content="index, follow" />

所以我的问题是,哪个指令优先于另一个指令,因为两个指令都设置在每个页面上?

3 个答案:

答案 0 :(得分:15)

我不确定是否可以给出一个明确的答案,因为行为可能依赖于实现(在机器人方面)。

但是,我认为有合理证据表明X-Robots-Tag优先于<meta name="robots" ...。见:

X-Robots-Tagrobots元指令之间的一个显着差异是:

  • X-Robots-Tag HTTP 协议标题的一部分。
  • <meta name="robots" ... HTML 文档标题的一部分。

因此X-Robots-Tag属于HTTP协议层,而<meta name="robots" ...属于HTML协议层。

Protocol capture

由于它们属于不同的协议层,它们不会被获取页面的(机器人)客户端同时解析:首先解析HTTP层,然后再解析HTML。

(另外,应该注意的是X-Robots-Tag<meta name="robots" ...并非所有机器人都支持.Google和Yahoo / Bing都支持这两种机器人,但根据this仅支持{{3}} <meta name="robots" ... 1}},其他人都不支持。)

摘要:

  • 如果机器人支持,X-Robots-Tag将首先处理;限制(noindex,nofollow)适用(并忽略<meta name="robots" ...)。
  • else,<meta name="robots" ...指令适用。

答案 1 :(得分:2)

根据我最近的经验,当谷歌看到混合消息时,默认情况下它更喜欢积极行动 - 即 - 它有利于索引 - 同时如果你有一个,那么会在你的网站管理员工具控制台中将问题标记为严重错误/警告。

在google中查看您网站的状态:https://www.google.com/webmasters/

在此处查看您网站的状态:http://www.bing.com/toolbox/webmaster(请注意,雅虎搜索现在由bing提供支持)

谷歌采取这种默认的正面行动,因为许多网站所有者无意中拥有一个狡猾的cms半封锁机器人,我们知道谷歌喜欢积累尽可能多的数据 - 任何借口!

如果技术设置错误,则可能会被完全忽略,并且我们知道如果没有指定设置,搜索引擎会默认索引并遵循。

答案 2 :(得分:1)

仅是Dan经验的更新,我也拥有

Header set X-Robots-Tag "noindex, nofollow"

<meta name="robots" content="index, follow" />

在我的一个Wordpress网站上,并在Google Search Console中进行了检查,确认X-Robots-Tag中的noindex优先,因为页面已被爬网但未建立索引。因此,正确答案中的逻辑确实是正确的。