Caractéristiques de l'en-tête HTTP "X-Robots-Tag", des attributs data-nosnippet et de la balise Meta pour les robots

Résumé

Ce document décrit la façon dont les paramètres au niveau de la page et ceux au niveau du texte peuvent être utilisés pour modifier la façon dont Google affiche vos contenus dans les résultats de recherche. Vous pouvez spécifier les paramètres au niveau de la page en incluant une balise Meta dans les pages HTML ou dans un en-tête HTTP. Vous pouvez spécifier les paramètres au niveau du texte en incluant des attributs data-nosnippet sur des éléments HTML d’une page.

Utiliser la balise Meta pour les robots

La balise Meta pour les robots vous permet d'utiliser une approche précise spécifique à la page pour contrôler l'indexation et l'affichage d'une page individuelle dans les résultats de recherche de Google. Placez la balise Meta pour les robots dans la section <head> d'une page donnée, comme ceci:

<!DOCTYPE html>
<html><head>
<meta name="robots" content="noindex" />
(…)
</head>
<body>(…)</body>
</html>

Dans l'exemple ci-dessus, la balise Meta pour les robots indique aux moteurs de recherche de ne pas afficher la page dans les résultats de recherche. La valeur de l'attribut name (robots) indique que l'instruction s'applique à tous les robots. Pour cibler un robot d'exploration spécifique, remplacez la valeur robots de l'attribut name par le nom du robot d'exploration en question. Les robots d'exploration spécifiques sont également connus sous le nom de user-agents. Un robot d'exploration utilise son user-agent pour demander à accéder à une page. Le nom du user-agent de notre robot d'exploration standard est Googlebot. Pour empêcher uniquement l'exploration de votre page par Googlebot, mettez à jour la balise comme suit :

<meta name="googlebot" content="noindex" />

Cette balise indique désormais à Google spécifiquement de ne pas afficher cette page dans les résultats de la recherche sur Google. Les attributs name et content ne sont pas sensibles à la casse.

Il peut exister plusieurs robots d'exploration par moteur de recherche, en fonction des différentes propriétés ou des objectifs poursuivis. Consultez la liste complète de nos robots d'exploration. Par exemple, pour afficher une page dans les résultats de la recherche sur le Web Google, mais pas sur Google Actualités, utilisez la balise Meta suivante :

<meta name="googlebot-news" content="noindex" />

Pour spécifier plusieurs robots d'exploration individuellement, utilisez plusieurs balises Meta pour les robots :

<meta name="googlebot" content="noindex">
<meta name="googlebot-news" content="nosnippet">

Utiliser l'en-tête HTTP X-Robots-Tag

L'instruction X-Robots-Tag peut faire partie des éléments de réponse d'en-tête HTTP pour une URL donnée. Toute instruction utilisable dans une balise Meta pour les robots peut également être utilisée comme instruction X-Robots-Tag. Voici un exemple de réponse HTTP avec une instruction X-Robots-Tag qui indique aux robots d'exploration de ne pas indexer une page :

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noindex
(…)

Plusieurs en-têtes X-Robots-Tag peuvent être combinés dans la réponse HTTP, ou vous pouvez spécifier une liste d'instructions séparées par des virgules. Voici un exemple de réponse d'en-tête HTTP avec une instruction X-Robots-Tag noarchive combinée à une instruction X-Robots-Tag unavailable_after.

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noarchive
X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST
(…)

Il est possible d'indiquer un user-agent avant les instructions dans un en-tête X-Robots-Tag. Par exemple, l'ensemble d'en-têtes HTTP X-Robots-Tag ci-dessous peut établir les conditions d'affichage d'une page dans les résultats de recherche pour différents moteurs de recherche :

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: googlebot: nofollow
X-Robots-Tag: otherbot: noindex, nofollow
(…)

Les instructions sans user-agent sont valables pour tous les robots d'exploration. L'en-tête HTTP, le nom du user-agent et les valeurs spécifiées ne sont pas sensibles à la casse.

Instructions d'indexation et d'affichage valides

Vous pouvez utiliser d'autres instructions pour contrôler l'indexation et l'affichage, à l'aide de la balise Meta pour les robots et de l'en-tête X-Robots-Tag. Chaque valeur représente une instruction spécifique. Le tableau suivant présente toutes les instructions que nous respectons et leur signification. Remarque : Il est possible que ces instructions ne soient pas traitées de la même façon par tous les robots d'exploration des moteurs de recherche. Vous pouvez combiner plusieurs instructions en une liste séparée par des virgules. Consultez la rubrique ci-dessous pour savoir comment gérer les instructions combinées. Ces instructions ne sont pas sensibles à la casse.

Instructions

all
Il n'existe pas de restrictions pour l'indexation ou l'affichage. Remarque : Cette instruction est la valeur par défaut, et il est inutile de l'indiquer explicitement.
noindex
Ne pas afficher cette page dans les résultats de recherche.
nofollow
Ne pas suivre les liens de cette page.
none
Équivaut à noindex, nofollow.
noarchive
Ne pas afficher de lien "En cache" dans les résultats de recherche.
nosnippet
Ne pas afficher d'extrait ou d'aperçu de vidéo de cette page dans les résultats de recherche. Une miniature statique (si disponible) restera visible.
max-snippet:[nombre]

Afficher un extrait textuel faisant au maximum [nombre] caractères pour ce résultat. (Notez qu’une URL peut apparaître plusieurs fois dans une même page de résultats). Les aperçus de format vidéo ou image ne sont pas impactés. Les extraits textuels sont impactés pour tous les formats de résultats (résultats classiques, Google Images, Discover, Assistant).

Toutefois, cette limite de caractères ne s'applique pas dans le cas où le webmaster a par ailleurs activement autorisé l’utilisation du contenu dans les extraits : par exemple, si le webmaster a mis en place des données structurées sur la page Web, ou s'il a un accord avec Google pour réutilisation de son contenu, la mise en place de l’instruction max-snippet ne sera pas prise en compte. Cette instruction est également ignorée si la valeur [nombre] est illisible, ou dans un format non compris.

Valeur spéciales :

  • 0 : aucun extrait textuel ne sera montré. Équivalent à nosnippet
  • -1: aucune limite de caractères spécifique ne sera prise en compte par Google pour les extraits textuels.

Mise en place : fin octobre 2019.

Exemple :

<meta name="robots" content="max-snippet:160">
max-image-preview:[setting]

Indiquer la taille maximale des aperçus de format “image”.

Valeurs acceptées pour le paramètre [setting] :

  • none : aucun aperçu image ne sera montré pour cette page.
  • standard : affichage d’un aperçu image par défaut.
  • large : une image de plus grande taille peut être montrée (jusqu’à atteindre la largeur entière du viewport).

Cela s'applique à tous les types de résultats de recherche (tels que Google web search, Google Images, Discover, Assistant). Toutefois, cette limite ne s'applique pas dans le cas où un éditeur a accordé une autorisation d'utilisation distincte du contenu. Par exemple, si l'éditeur fournit du contenu sous forme de données structurées sur la page (telles que des versions AMP et canoniques d'un article) ou dispose d'un contrat de licence avec Google, ce paramètre n'interrompra pas les utilisations autorisées plus spécifiques

Les éditeurs qui ne souhaitent pas que Google utilise des vignettes plus grandes lorsque leurs pages AMP et la version canonique d'un article sont affichées dans la recherche et dans Discover peuvent définir l’attribut max-image-preview sur «standard» ou «none» dans les paramètres Meta pour les robots.

Mise en place : fin octobre 2019.

Exemple:

<meta name="robots" content="max-image-preview:standard">
max-video-preview:[nombre]

Afficher, pour les vidéos présentes sur une page web, un aperçu au format vidéo qui dure au maximum [nombre] secondes.

Valeur spéciales :

  • 0 : au mieux, un aperçu au format “image” pourra être utilisé pour les vidéos impactées. L’aperçu image en question respectera alors le paramètre spécifié pour max-image-preview.
  • -1 : aucune limite spécifiée par le webmaster ne sera prise en compte.

Les extraits vidéo sont impactés pour tous les formats de résultats (résultats classiques, Google Images, Discover, Assistant). Cette instruction est ignorée si la valeur [nombre] est illisible, ou dans un format non compris.

Mise en place : fin octobre 2019.

Example:

<meta name="robots" content="max-video-preview:-1">
notranslate
Ne pas proposer la traduction de cette page dans les résultats de recherche.
noimageindex
Ne pas indexer les images de cette page.
unavailable_after: [RFC-850 date/time]

Ne pas afficher cette page dans les résultats de recherche après la date et l'heure indiquées. La date et l'heure doivent être indiquées au format RFC 850. Cette instruction est ignorée si les dates et heures spécifiées ne sont pas valides. Par défaut, il n’y a pas de “date d’expiration” pour les contenus.

Example:

<meta name="robots" content="unavailable_after:Monday, 31-Dec-18 09:15:00 CET">

Lorsque le fichier robots.txt (ou l'absence d'un tel fichier) permet d'explorer une page, par défaut les pages sont considérées comme explorables, indexables et archivables. Leur contenu peut être utilisé dans les extraits qui s'affichent dans les résultats de recherche, sauf en cas d'interdiction expresse dans une balise Meta pour les robots ou dans un en-tête X-Robots-Tag.

Gérer les instructions d'indexation et d'affichage combinées

Vous pouvez créer une instruction multiple en combinant les instructions des balises Meta pour les robots avec des virgules. Voici un exemple de balise Meta pour les robots qui indique aux robots d'exploration de ne pas indexer la page et de ne pas explorer les liens de la page :

<meta name="robots" content="noindex, nofollow">

Voici un exemple qui limite l'extrait textuel à 20 caractères et permet d'afficher un aperçu d'image grand format :

<meta name="robots" content="max-snippet:20, max-image-preview:large">

Si plusieurs robots d'exploration et plusieurs instructions sont spécifiés, le moteur de recherche utilise la somme des instructions négatives. Exemple :

<meta name="robots" content="nofollow">
<meta name="googlebot" content="noindex">

Lors de l'exploration, Googlebot considère que la page qui contient ces balises Meta possède une instruction noindex, nofollow.

Utiliser l'attribut HTML data-nosnippet

Mise en place : plus tard en 2019.

Vous pouvez indiquer que certaines parties textuelles d'une page HTML ne doivent pas être utilisées comme extraits dans les résultats de recherche. Vous pouvez le faire au niveau d'un élément HTML avec l'attribut data-nosnippet sur des éléments span, div et section. L'attribut data-nosnippet est considéré comme étant un attribut booléen, il est valide avec ou sans valeur. Pour qu'elle puisse être lue par une machine, la section HTML doit être valide et toutes les balises appropriées doivent être fermées conformément.

Exemples :

<p>Ce texte peut être affiché dans un extrait
<span data-nosnippet>et cette partie ne doit pas être affichée</span>.</p>

<div data-nosnippet>pas dans l'extrait</div>
<div data-nosnippet="true">pas dans l'extrait non plus</div>

<div data-nosnippet>texte</html>
<!-- unclosed "div" inclura tout le contenu après -->

<mytag data-nosnippet>texte</mytag>
<!-- NOT VALID: pas d'élément span, div ou section -->

Google effectue normalement un rendu des pages pour les indexer, toutefois, le rendu n'est pas garanti. C'est pourquoi l'extraction de data-nosnippet peut se faire aussi bien avant qu'après le rendu. Pour éviter toute incertitude concernant le rendu, n'ajoutez pas et ne supprimez pas l'attribut data-nosnippet dans des nœuds existants avec JavaScript. Lorsque vous ajoutez des éléments DOM avec JavaScript, incluez l'attribut data-nosnippet comme obligatoire lorsque vous ajoutez l'élément au DOM de la page. Si vous utilisez des éléments personnalisés, enveloppez-les ou interprétez-les dans des éléments div, span ou section si vous devez utiliser l'attribut data-nosnippet.

Utiliser les données structurées

Les balises Meta pour les robots indiquent quelle quantité de contenu Google extrait automatiquement des pages Web en vue de l'afficher dans les résultats de recherche. Mais de nombreux éditeurs utilisent également les données structurées schema.org pour influencer la façon dont les données sont présentées visuellement dans la recherche. Les instructions au niveau des balises Meta pour les robots n'affecteront pas l'utilisation de ces données structurées. Pour gérer l'utilisation des données structurées pour vos pages Web, vous pouvez simplement modifier les types et les valeurs des données structurées, en ajoutant ou modifiant des informations afin de ne fournir que les données que vous souhaitez rendre disponibles.

Notez également que les données structurées peuvent toujours être utilisées dans les résultats de recherche lorsqu'elles sont déclarées dans un élément data-nosnippet.

Mettre en œuvre l'instruction X-Robots-Tag

Vous pouvez ajouter l'instruction X-Robots-Tag aux réponses HTTP d'un site au moyen des fichiers de configuration du logiciel de serveur Web de votre site. Par exemple, sur les serveurs Web Apache, vous pouvez utiliser les fichiers .htaccess et httpd.conf. L'avantage d'utiliser un-tête X-Robots-Tag avec des réponses HTTP est de pouvoir spécifier des instructions d'exploration applicables à l'ensemble d'un site. La compatibilité avec les expressions régulières offre un haut niveau de flexibilité.

Par exemple, pour ajouter une balise X-Robots-Tag noindex, nofollow à la réponse HTTP de tous les fichiers .PDF d'un site, ajoutez l'extrait suivant au fichier .htaccess ou httpd.conf à la racine du site sur Apache ou au fichier .conf du site sur NGINX :

Apache:

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

NGINX:

location ~* \.pdf$ {
  add_header X-Robots-Tag "noindex, nofollow";
}

Vous pouvez utiliser l'en-tête X-Robots-Tag pour les fichiers qui ne sont pas en HTML, comme les fichiers image, qui ne sont pas compatibles avec des balises Meta pour robots en HTML. L'exemple ci-dessous explique comment ajouter une instruction X-Robots-Tag noindex pour les fichiers image (.png, .jpeg, .jpg, .gif) d'un site entier :

Apache:

<Files ~ "\.(png|jpe?g|gif)$">
  Header set X-Robots-Tag "noindex"
</Files>

NGINX:

location ~* \.(png|jpe?g|gif)$ {
  add_header X-Robots-Tag "noindex";
}

Combiner les instructions d'exploration avec les instructions d'indexation/affichage

Les balises Meta pour les robots et les en-têtes HTTP X-Robots-Tag sont détectés lors de l'exploration d'une URL. Si une page est exclue de l'exploration par l'entremise d'un fichier robots.txt, alors toute information sur les instructions d'indexation ou d'affichage est introuvable et par conséquent ignorée. S'il est nécessaire de suivre des instructions d'indexation ou d'affichage, les URL qui contiennent ces instructions ne peuvent être exclues de l'exploration.