11

Header在我的虚拟主机配置中放置了以下内容:

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

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

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

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

4

3 回答 3

16

我不确定是否可以对该问题给出明确的答案,因为行为可能取决于实现(在机器人方面)。

但是,我认为有合理的证据X-Robots-Tag可以优先于<meta name="robots" .... 看 :

X-Robots-Tagrobotsmeta 指令之间的一个显着区别是:

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

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

协议捕获

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

(另外,应该注意的是X-Robots-Tag<meta name="robots" ...并非所有机器人都支持。谷歌和雅虎/必应都支持,但据此只有一些支持<meta name="robots" ...,其他都不支持。)

概括 :

  • 如果机器人支持,X-Robots-Tag将首先处理;限制(noindex,nofollow)适用(并被<meta name="robots" ...忽略)。
  • 否则,<meta name="robots" ...指令适用。
于 2013-08-20T08:52:03.773 回答
2

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

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

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

谷歌采取了这种默认的积极行动,因为许多网站所有者在不知不觉中拥有一个狡猾的 cms 半屏蔽机器人,而且我们知道谷歌喜欢尽可能多地收集数据——任何借口!

如果技术设置错误,它们很可能会被完全忽略,并且我们知道在未指定设置时搜索引擎如何索引和默认遵循。

于 2013-12-02T11:31:54.487 回答
2

只是更新丹的经验,我也有

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

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

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

于 2019-03-22T21:48:06.420 回答