Aller au contenu

Guide · Exploration et indexation

Le fichier robots.txt, ce qu'il fait et ce qu'il ne fait pas

Le robots.txt est le fichier le plus simple du référencement et celui qui cause le plus de dégâts. Il contrôle l'exploration, et rien d'autre.

Par Camille Mis à jour le 3 min de lecture

Le fichier robots.txt se place à la racine du domaine et indique aux robots d'exploration ce qu'ils peuvent demander. C'est une convention respectée par les robots sérieux, et ignorée par les autres.

Ce qu'il contrôle, et ce qu'il ne contrôle pas

Il contrôle l'exploration. Un robot qui respecte la convention ne demandera pas une URL interdite.

Il ne contrôle pas l'indexation. Une URL bloquée peut apparaître dans les résultats, sans extrait, si d'autres sites y font des liens : le moteur connaît l'adresse, il n'a simplement pas pu lire la page. Pour empêcher l'indexation, la directive s'appelle noindex et se place dans la page, ce qui suppose que le robot puisse la lire. Bloquer et demander noindex en même temps est contradictoire.

Il ne contrôle pas l'accès. Ce n'est pas une protection : le fichier est public, et lister une URL sensible revient à la signaler. Ce qui doit rester privé se protège par une authentification.

La syntaxe, en entier

Quatre directives suffisent dans la quasi-totalité des cas.

User-agent: *
Disallow: /panier/
Disallow: /*?tri=
Allow: /panier/livraison/

Sitemap : https://exemple.fr/sitemap.xml<br> ```

User-agent ouvre un groupe de règles pour un robot donné, * désignant tous ceux qui n'ont pas de groupe à eux. Disallow interdit un chemin. Allow rouvre une exception à l'intérieur d'une interdiction. Sitemap déclare le plan du site, et vaut pour tous les robots quel que soit le groupe.

Deux caractères spéciaux sont reconnus : * remplace n'importe quelle suite de caractères, $ marque la fin de l'URL.

La règle que presque tout le monde ignore

Un robot lit un seul groupe, celui qui le nomme le plus précisément. Les autres groupes, y compris le groupe générique, sont ignorés entièrement.

Autrement dit, ce fichier n'interdit rien à Googlebot :

User-agent: *
Disallow: /prive/

User-agent : Googlebot<br> Allow : /<br> ```

Googlebot lit son propre groupe, qui autorise tout, et n'applique jamais l'interdiction générique. C'est l'erreur la plus coûteuse que nous rencontrons en audit, et elle passe inaperçue parce que le fichier paraît cohérent à la lecture.

Les quatre erreurs qui coûtent le plus

Le blocage des ressources d'affichage. Interdire les dossiers de feuilles de style ou de scripts empêche le moteur de voir la page telle qu'un visiteur la voit. Il en tire des conclusions sur la mise en page mobile et sur le contenu visible.

La casse du nom d'agent. La correspondance des chemins est sensible à la casse : /Prive/ et /prive/ sont deux chemins différents. Le nom de l'agent, lui, ne l'est pas.

Le fichier en erreur serveur. Un robots.txt qui renvoie une erreur 500 est traité comme une interdiction totale par la plupart des robots, parfois pendant plusieurs jours. Un fichier absent, en revanche, vaut autorisation complète : il vaut mieux ne pas en avoir qu'en avoir un cassé.

Le blocage hérité d'une recette. Un Disallow : / laissé en place après une mise en production. Cela arrive plus souvent qu'on ne l'imagine, et cela retire un site entier de l'index en quelques jours.

Vérifier

Ouvrez votresite.fr/robots.txt dans un navigateur en navigation privée, depuis une connexion extérieure à votre réseau. C'est exactement ce que voit un robot.

Testez ensuite quelques URL représentatives dans l'outil de test de la Search Console, qui applique la logique réelle des groupes et indique quelle règle s'applique. Le chapitre sur la Search Console décrit où le trouver.

Enfin, regardez vos journaux : un robot qui continue de demander une URL interdite ne respecte pas la convention, et il faudra le traiter au niveau du serveur.