robots.txt, noindex ou canonical : lequel choisir ?
Trois outils, trois rôles différents. Avec le mauvais, Google garde la page que vous vouliez retirer, ou ne lit même pas votre instruction.
Utilisez robots.txt pour contrôler l'exploration, noindex pour exclure une page des résultats de recherche, et rel=canonical pour désigner une URL parmi un groupe de doublons. Ils règlent des problèmes différents et se gênent entre eux : une page bloquée dans robots.txt peut quand même être indexée, et Google ne voit jamais une règle noindex sur une page qu'il ne peut pas explorer.
Quelle différence entre robots.txt, noindex et canonical ?
Chacun intervient à une étape différente. robots.txt décide si un robot peut récupérer une URL. noindex décide si une page récupérée peut apparaître dans les résultats. La balise canonical indique à Google laquelle de plusieurs pages presque identiques doit représenter le groupe. Voici comment la documentation de Google les décrit côte à côte.
| Disallow dans robots.txt | noindex | rel=canonical | |
|---|---|---|---|
| Contrôle | L'exploration | L'indexation | Le doublon qui représente le groupe |
| Où il se trouve | Dans le fichier robots.txt à la racine du site | Une balise meta robots ou un en-tête HTTP X-Robots-Tag | Un élément link dans le head, ou un en-tête HTTP Link |
| Retire l'URL de Google ? | Non. Une URL bloquée peut être indexée si d'autres sites pointent vers elle | Oui, dès que Googlebot explore la page et lit la règle | Non. Les doublons sont regroupés, pas supprimés |
| La page doit-elle être explorée ? | Non | Oui | Oui |
| À quel point est-ce contraignant ? | Chaque robot choisit de le respecter ou non | Google retire entièrement la page | Une indication, pas une règle |
Quand utiliser robots.txt ?
Quand le problème, c'est le trafic d'exploration. L'introduction à robots.txt de Google explique que le fichier sert surtout à éviter de surcharger votre site de requêtes. Pour les pages web, il convient dans deux cas : votre serveur peine face au robot de Google, ou vous voulez éviter l'exploration de pages peu importantes ou similaires. C'est aussi la méthode documentée pour empêcher les fichiers image, vidéo et audio d'apparaître dans la recherche Google.
Ce qu'il n'est pas, selon Google, c'est un moyen d'exclure une page web de Google. Une page bloquée peut tout de même être indexée si d'autres sites pointent vers elle. L'URL et le texte d'ancrage de ces liens peuvent alors s'afficher dans les résultats, simplement sans description. Et les règles sont facultatives : Googlebot les respecte, d'autres robots peut-être pas. Vérifiez ce que votre fichier autorise vraiment avec notre testeur de robots.txt.
Quand utiliser noindex ?
Quand une page ne doit pas apparaître dans la recherche Google. Placez <meta name="robots" content="noindex"> dans le head, ou envoyez X-Robots-Tag: noindex en en-tête de réponse pour des fichiers comme les PDF. La documentation de Google sur noindex indique qu'une fois que Googlebot a exploré la page et extrait la règle, Google la retire entièrement des résultats, même si d'autres sites pointent vers elle.
Le piège se trouve dans cette première étape. Google doit explorer la page pour voir les balises meta et les en-têtes HTTP. Si la page apparaît encore après l'ajout de noindex, la documentation cite deux causes probables : Google ne l'a pas encore explorée de nouveau, ou robots.txt la bloque. L'outil d'inspection d'URL de la Search Console permet de demander une nouvelle exploration. Google précise aussi que d'autres moteurs de recherche peuvent interpréter noindex différemment.
Quand la balise canonical est-elle le meilleur choix ?
Quand le même contenu se trouve à plusieurs URL et que vous voulez qu'une seule en récolte le bénéfice. La page de Google sur le regroupement des URL en double en donne les raisons : choisir l'URL que les internautes voient dans les résultats, regrouper les signaux comme les liens sur une URL préférée, simplifier le suivi des statistiques et éviter de consacrer du temps d'exploration aux doublons.
Une canonical ne masque rien. La page de Google sur la canonicalisation la qualifie d'indication et non de règle, et précise que la page canonique est explorée le plus régulièrement, les doublons moins souvent. Un résultat renvoie en général à la canonique, sauf si un doublon convient mieux à l'internaute. Les redirections et rel=canonical sont des signaux forts, l'inclusion dans un sitemap un signal faible. Pour les fichiers non HTML, envoyez la canonical dans un en-tête HTTP Link. Notre guide des conflits de balise canonical explique ce qui se passe quand ces signaux se contredisent.
Peut-on combiner robots.txt et noindex ?
Pas sur la même URL, si le but est de la retirer. Google est explicite : si une page est bloquée par robots.txt, le robot ne verra jamais la règle noindex, et la page peut encore apparaître dans les résultats. Pour une URL indexée qui résiste, la solution consiste donc à retirer le Disallow, à laisser Google explorer la page et à laisser noindex agir.
La page de Google sur les URL en double cite trois autres erreurs à éviter :
- N'utilisez pas robots.txt pour la canonicalisation.
- N'utilisez pas noindex pour orienter le choix de la canonique au sein d'un même site, car cela bloque complètement la page dans la recherche.
- N'utilisez pas l'outil de suppression d'URL pour la canonicalisation, car il masque toutes les versions d'une URL.
Lequel choisir ?
Partez du résultat voulu, pas de l'outil que vous connaissez.
- Votre serveur est surchargé, ou les robots perdent du temps sur des pages peu importantes : robots.txt.
- Une page ne doit pas apparaître dans Google : noindex, en laissant l'exploration ouverte. Pour tout ce qui est privé, une protection par mot de passe, que Google cite comme l'autre option.
- Le même contenu existe à plusieurs URL : rel=canonical sur chaque doublon, ou une redirection si le doublon n'a pas besoin d'exister.
- Des images, vidéos ou fichiers audio à exclure de la recherche Google : robots.txt.
Si ce sont les robots d'IA qui vous préoccupent, notre guide robots.txt pour les robots d'IA propose des règles prêtes à copier, robot par robot.