Asiste al evento de SEO más avanzado del año

x-robots-tag

Cómo implementar x-robots-tag desde el servidor y sus diferencias con la metaetiqueta meta robots

Autor:
Carlos Sánchez
Temática:
Metaetiquetas
,
Servidores
Fecha de publicación:
2022-03-10

Última revisión:
2023-11-07

El X-Robots tag es una cabecera HTTP alternativa a la metaetiqueta de HTML que se hace desde el servidor.

<meta name="robots"/>

En "combate" contra una metaetiqueta robots, ganaría la opción más restrictiva. Es decir que si, por ejemplo, tenemos una etiqueta noindex y otra index, prevalecerá la etiqueta más restrictiva, es este caso, la noindex, independientemente de cuál esté en la metaetiqueta y cual esté en el encabezado HTTP.

Entre las ventajas que podemos encontrar al implementar directrices desde el x-robots-tag nos encontramos:

Además comparte otras ventajas y desventajas con el meta robots habitual. Por ejemplo, las directivas seleccionadas no serán legibles si se bloquean desde el robots.txt o se bloquean desde el servidor.

Cómo implementar el x-robots-tag

En primer lugar, se necesita acceso al servidor. Si usas Apache, podrás hacerlo simplemente con que puedas escribir en tu .htaccess en la carpeta ROOT de tu proyecto. Si usas NGINX tendrás que ir al .conf, implementar los cambios y reiniciar el servidor.

Todas las directivas que son válidas en la metaetiqueta meta robots, son igualmente válidas en el x-robots-tag.

Apache

En Apache se debe tener habilitado el ifmodule mod_headers.c y aplicar el comando dentro de dicho ifmodule. No es obligatorio, pero recomiendo meterlo dentro del ifmodule en todos los casos.

Así por ejemplo se pondría un x-robots tag en todas las páginas de un proyecto. Al igual que se pueden poner Spiders específicos como GoogleBot.

<ifModule mod_headers.c>
Header set X-Robots-Tag "noindex, nofollow"
</ifModule>

En el caso de que se quiera apuntar al contenido de un subdirectorio específico (Por ejemplo el subdirectorio test), sería de esta forma:

<If "%{REQUEST_URI} =~ m#^/test/#">
Header set X-Robots-Tag "noindex"
</If>

Con Regex, además se puede apuntar directamente a solo un tipo de archivos:

<Files ~ "\.(avif|webp|svg)$">
  Header set X-Robots-Tag "unavailable_after: 27 Jun 2045 15:00:00 PST"
</Files>

De esta forma se haría que estos archivos no estén index a partir de esa fecha.

NGINX

Aunque NGINX como servidor es muchísimo más eficiente que Apache, podríamos destacar alguna pequeña carencia, y es su configuración para SEO, ya que tienes que reiniciarlo cada vez que haces un cambio en su configuración. Esto es un problema gordo a la hora de hacer este tipo de implementaciones de forma continua. Es el precio a pagar por la eficiencia, sin embargo, si que se pueden hacer dichos cambios. Se deben hacer dentro de "server{}" en el .conf.

Para aplicar el cambio en todo el servidor, sería simplemente así:

add_header X-Robots-Tag "noindex, nofollow";

Para hacerlo sobre un formato en particular o varios, sería de esta forma con Regex:

location ~* \.(png|svg|avif)$ {
add_header X-Robots-Tag "noindex";
}

Y así para un archivo específico:

location = /test/hola.pdf {
add_header X-Robots-Tag "noindex, nofollow";
}

Bibliografía

Especificaciones del elemento X-Robots Tag según Google

Si te gusta este artículo, me ayudarías un montón compartiendo mi contenido:
No se te da mal el SEO Técnico

Te falta mi máster. Accede a una formación avanzada que te permitirá aplicar e implementar SEO en cualquier tipo de WEB

¡Accede al Máster de SEO Técnico!
Tal vez te interesen otros artículos:
Artículos de SEO

Si te ha gustado esta publicación, siempre me lo puedes agradecer dándome like en esta publicación de LinkedIn sobre este mismo artículo.

Usamos cookies para asegurar que te damos la mejor experiencia en nuestra web. Aquí tienes nuestra política de privacidad.