SEO

X-Robots-Tag

X-Robots-Tag est un moyen de contrôler le crawl et l'indexation des moteurs de recherche au moyen des en-têtes de réponse HTTP. Au lieu de placer <meta name="robots"> dans le HTML, le serveur envoie les mêmes directives dans un en-tête de réponse comme X-Robots-Tag: noindex.

X-Robots-Tag est un moyen de contrôler le crawl et l'indexation des moteurs de recherche au moyen des en-têtes de réponse HTTP. Au lieu de placer <meta name="robots"> dans le HTML, le serveur envoie les mêmes directives dans un en-tête de réponse comme X-Robots-Tag: noindex.

Pourquoi c'est important

Les balises meta HTML ne fonctionnent qu'à l'intérieur des fichiers HTML. Les ressources non HTML, à savoir PDF, images, vidéos, réponses d'API JSON, ne peuvent pas utiliser de balises <meta>, ce qui laisse une lacune dans le contrôle de l'indexation. X-Robots-Tag comble cette lacune en s'appliquant à toute réponse HTTP. Search Engine Land a documenté des cas e-commerce où des dizaines de milliers de catalogues PDF ont été indexés et ont nui au classement en tant que contenu dupliqué, corrigés d'un coup avec X-Robots-Tag.

X-Robots-Tag, meta robots et robots.txt

MéthodeEmplacementPortéeBloque le crawl ?
robots.txt/robots.txtMotifs d'URLOui, bloque le crawl lui-même
Meta robots<head> HTMLCette page HTMLNon, contrôle uniquement l'indexation
X-Robots-TagEn-tête de réponse HTTPTout type de ressourceNon, contrôle uniquement l'indexation

Distinction cruciale : robots.txt dit « ne pas crawler », tandis que meta robots et X-Robots-Tag disent « ne pas indexer ». Pour bloquer l'indexation, Googlebot doit effectivement atteindre la page pour lire la directive. Un blocage dans robots.txt arrête le crawl entièrement, de sorte que Google ne voit jamais l'instruction d'indexation.

Principales directives

DirectiveSignification
noindexNe pas afficher dans les résultats de recherche
nofollowNe pas suivre les liens de la page
noneIdentique à noindex, nofollow
noarchiveNe pas afficher de copie en cache dans les SERP
nosnippetNe pas afficher d'extraits ni de miniatures
unavailable_after: [date]Retirer de l'index après la date
max-snippet: [n]Limiter la longueur de l'extrait
max-image-preview: [setting]Limiter la taille de l'aperçu d'image
max-video-preview: [n]Limiter la durée de l'aperçu vidéo

Pour un contrôle des extraits au niveau d'un élément dans une page HTML, utilisez data-nosnippet sur l'élément précis que vous souhaitez exclure des extraits de recherche. Cela diffère de X-Robots-Tag, car cela masque uniquement le texte sélectionné plutôt que de modifier l'état d'indexation de toute la ressource.

Exemples de configuration

Bloquer l'indexation des PDF (Apache .htaccess) :

<FilesMatch "\.pdf$">
  Header set X-Robots-Tag "noindex, nofollow"
</FilesMatch>

Bloquer un répertoire d'images (Nginx) :

location /private-images/ {
  add_header X-Robots-Tag "noindex";
}

Cibler un robot précis (Googlebot uniquement) :

X-Robots-Tag: googlebot: noindex

Indexation à durée limitée :

X-Robots-Tag: unavailable_after: 31 Dec 2026 23:59:59 GMT

Exclusion d'extrait au niveau d'un élément (HTML) :

<p data-nosnippet>Ne pas afficher cette phrase dans les extraits Google.</p>

Pièges pratiques

Ne combinez pas avec un disallow dans robots.txt : si robots.txt bloque l'URL, Google ne peut pas lire l'en-tête du tout. Pour bloquer l'indexation, autorisez le crawl dans robots.txt et utilisez X-Robots-Tag noindex.

Nécessite une configuration serveur : contrairement aux balises meta, X-Robots-Tag se configure au niveau du serveur web (Apache, Nginx, Cloudflare Workers). Les plateformes CMS ne le gèrent pas toujours automatiquement.

Vérifiez avec Search Console ou curl : assurez-vous que l'en-tête apparaît bien à l'aide de l'outil d'inspection d'URL de Google Search Console ou de curl -I https://example.com/file.pdf.

Les contrôles d'extraits ne sont pas des contrôles de confidentialité : nosnippet et data-nosnippet modifient la façon dont Google affiche un résultat, mais le contenu sous-jacent reste accessible publiquement. Utilisez l'authentification ou un contrôle d'accès côté serveur pour le contenu privé.

Sources: