I am not sure if a definitive answer can be given to the question, as the behavior may be implementation-dependent (on the robot side).
However, I think there is reasonable evidence that X-Robots-Tag
will take precedence over <meta name="robots" ...
. See :
One significant difference between the X-Robots-Tag
and the robots
meta directive is:
X-Robots-Tag
is part of the HTTP protocol header.
<meta name="robots" ...
is part of the HTML document header.
Therefore the the X-Robots-Tag
belongs to HTTP protocol layer, while <meta name="robots" ...
belongs to the HTML protocol layer.
As they belong to a different protocol layer, they will not be parsed simultaneously by the (robot) client getting the page: The HTTP layer will be parsed first, and the HTML in a later step.
(Also, it should be noted that X-Robots-Tag
and <meta name="robots" ...
are not suppported by all robots. Google and Yahoo/Bing suppport both, but according to this some support only <meta name="robots" ...
, others support neither.)
Summary :
- if supported by the robot,
X-Robots-Tag
will be processed first ; restrictions (noindex, nofollow) apply (and <meta name="robots" ...
is ignored).
- else,
<meta name="robots" ...
directive applies.
index
,follow
are the default values, anynoindex
,nofollow
directives that show up, whether in header or meta, will trump it. But I'd like to hear a definitive answer. Adding bounty... – Callahan