Créer un robots.txt sans faute de syntaxe
Le fichier robots.txt, placé à la racine d'un site (https://www.example.com/robots.txt), indique aux robots d'exploration les parties qu'ils peuvent visiter. Ce générateur de robots.txt l'écrit pour vous à partir de groupes de règles, signale les erreurs courantes et contient un testeur : vous saisissez une adresse et un robot, il répond « Autorisé » ou « Bloqué » et affiche la règle décisive. Rien n'est envoyé, tout se calcule dans votre navigateur.
Mode d'emploi
- Partez d'un préréglage : « Tout autoriser », « Tout bloquer », « Bloquer un dossier d'administration » ou « Bloquer les robots d'IA listés ». Vous pouvez aussi coller votre fichier actuel dans « Importer un robots.txt existant », puis cliquer sur « Importer ».
- Dans chaque groupe, saisissez le champ « User-agent » :
*pour tous les robots, ou le nom technique d'un robot. La liste « Ajouter un exemple… » propose des noms courants, à vérifier dans la documentation de chaque robot. - Ajoutez vos règles avec « + Ajouter une règle » : choisissez
DisallowouAllowet tapez un chemin qui commence par/. Indiquez au besoin un « Crawl-delay » et, en bas, l'adresse complète de votre sitemap. - Vérifiez « Points à vérifier », essayez quelques adresses dans le « Testeur d'URL », puis cliquez sur « Télécharger robots.txt » ou « Copier ».
Syntaxe et ordre de priorité des règles
Un groupe commence par une ou plusieurs lignes User-agent, suivies de ses règles. Un robot applique un seul groupe : celui qui porte son nom (sans tenir compte des majuscules), sinon le groupe *. Si son nom apparaît dans deux groupes, leurs règles sont réunies. Dans le groupe retenu, la norme RFC 9309 ne suit pas l'ordre des lignes : la règle qui correspond avec le chemin le plus long l'emporte, et à longueur égale, Allow gagne.
Exemple pour une boutique :
User-agent: *Disallow: /panier/Allow: /panier/aideDisallow: /*.pdf$
| Adresse testée | Résultat | Pourquoi |
|---|---|---|
/panier/commande | Bloqué | Disallow: /panier/ est la seule règle qui correspond |
/panier/aide-livraison | Autorisé | /panier/aide (12 caractères) est plus long que /panier/ (8) |
/docs/tarifs.pdf | Bloqué | le joker * remplace « docs/tarifs » et $ exige la fin de l'adresse |
/docs/tarifs.pdf?v=2 | Autorisé | l'adresse ne se termine pas par .pdf |
Sans $, une règle compare le début de l'adresse : Disallow: /blog bloque aussi /blogueurs. Les caractères encodés sont comparés après normalisation : /%61dmin vaut /admin, mais %2F ne vaut pas /.
Sitemap, exploration et désindexation
La ligne Sitemap donne l'adresse complète de votre plan de site ; elle ne dépend d'aucun groupe et peut être répétée. Attention, Disallow empêche l'exploration, pas l'indexation : une page bloquée peut rester dans les résultats, sans description, si d'autres sites la citent. Pour la retirer, laissez-la explorable et ajoutez une balise meta robots noindex. Le fichier n'est pas non plus une protection : il est public, et les robots malveillants l'ignorent.
Robots d'IA et erreurs fréquentes
Certains services d'intelligence artificielle explorent le web avec leurs propres robots, sous un nom technique publié. Vous pouvez les autoriser ou les bloquer comme les autres ; le préréglage dédié crée un groupe avec les noms de la liste d'exemples et Disallow: /. Ces noms changent : relisez votre fichier de temps en temps. Les erreurs les plus courantes sont un Disallow: / oublié après une mise en production, un chemin sans / initial, une ligne sans deux-points et un fichier placé ailleurs qu'à la racine. Le générateur signale les trois premières.
Questions fréquentes
Le Crawl-delay est-il respecté ?
Pas partout. Cette directive ne fait pas partie de la norme : certains robots l'appliquent, d'autres l'ignorent.
Un « Disallow: » vide bloque-t-il quelque chose ?
Non. Une règle Disallow: sans chemin ne correspond à aucune adresse : c'est la manière classique d'écrire « tout est autorisé ».
Faut-il un robots.txt pour chaque sous-domaine ?
Oui. Le fichier ne vaut que pour l'hôte, le protocole et le port où il est servi : blog.example.com et www.example.com ont chacun le leur.