BrowserTools
Accueil / Validateurs / Testeur de robots.txt

Testeur de robots.txt

Vérifiez si un robot comme Googlebot ou GPTBot peut visiter une page, et quelle ligne du robots.txt en décide.

Chargement de Testeur de robots.txt… Si rien ne se passe, activez JavaScript.

Un fichier robots.txt a l'air simple, mais la façon dont les robots d'exploration le lisent obéit à quelques règles qui surprennent presque tout le monde. Un robot ne cumule pas son propre groupe avec le groupe User-agent: * : dès qu'un groupe le nomme, les règles générales ne s'appliquent plus. Entre Allow et Disallow, l'ordre des lignes n'a pas d'importance : la règle dont le chemin correspondant est le plus long l'emporte et, quand un Allow et un Disallow ont la même longueur, Allow gagne. Les chemins sont sensibles à la casse, un * correspond à n'importe quelle suite de caractères, un $ final ancre la correspondance à la fin de l'URL et un Disallow vide ne bloque rien. Depuis 2022, ces règles sont écrites dans la RFC 9309, le standard du Robots Exclusion Protocol que suivent Google, Bing et la plupart des grands robots.

Questions fréquentes

Si un robot a son propre groupe, respecte-t-il encore User-agent: * ?
Non. Un robot n'utilise que le groupe le plus spécifique qui le nomme. Si votre fichier contient un groupe pour Googlebot, Googlebot ignore tout le contenu du groupe User-agent: *, et toute règle qu'il doit suivre doit être répétée dans son propre groupe. Si plusieurs groupes nomment le même robot, leurs règles sont fusionnées. Le testeur indique quel groupe a été retenu pour le robot sélectionné.
Allow et Disallow correspondent tous deux à mon URL. Lequel l'emporte ?
Celui dont le chemin est le plus long, compté en caractères, quel que soit l'ordre dans le fichier. Avec Disallow: /shop et Allow: /shop/sale, /shop/sale/shoes est autorisé, car /shop/sale est plus long. Quand les deux règles ont la même longueur, par exemple Allow: /page et Disallow: /page, Allow l'emporte. Le tableau des résultats montre la règle décisive et celle qu'elle a battue.
Comment fonctionnent * et $ dans robots.txt ?
Un astérisque correspond à n'importe quelle suite de caractères, y compris vide, et un dollar tout à la fin signifie que l'URL doit se terminer là. Disallow: /*.php bloque /index.php et /folder/page.php?id=1, tandis que Disallow: /*.php$ bloque /index.php mais pas /index.php?id=1. Un astérisque final n'ajoute rien : /fish* équivaut à /fish. Chaque règle est une correspondance de préfixe depuis le début du chemin, donc /fish bloque aussi /fish.html et /fishing.
Les chemins de robots.txt sont-ils sensibles à la casse ?
Oui. Disallow: /Private/ ne bloque pas /private/. Les noms de directives et les jetons user-agent ne sont pas sensibles à la casse, donc user-agent: GOOGLEBOT et User-agent: Googlebot sont équivalents, mais les chemins d'Allow et de Disallow sont comparés à l'identique.
Bloquer une page dans robots.txt la retire-t-il de Google ?
Pas forcément. robots.txt contrôle l'exploration, pas l'indexation. Une URL bloquée peut encore apparaître dans les résultats, généralement sans description, si d'autres sites pointent vers elle. Pour garder une page hors de l'index, laissez-la être explorée et ajoutez une balise meta robots noindex ou un en-tête X-Robots-Tag. La ligne Noindex dans robots.txt ne fonctionne plus chez Google depuis 2019.
Comment bloquer des robots d'IA comme GPTBot et ClaudeBot ?
Ajoutez un groupe qui les nomme, par exemple User-agent: GPTBot sur une ligne, User-agent: ClaudeBot sur la suivante, puis Disallow: /. Choisissez chaque robot dans ce testeur pour vérifier le résultat. N'oubliez pas que certains jetons, comme Google-Extended et Applebot-Extended, sont des jetons de contrôle et non des robots, et que les récupérations déclenchées par un utilisateur peuvent ne pas suivre robots.txt du tout.
Pourquoi /robots.txt est-il toujours autorisé ?
Parce qu'un robot doit lire le fichier avant de pouvoir lui obéir. La RFC 9309 précise que /robots.txt est implicitement autorisé, de sorte qu'une règle Disallow: / n'empêche jamais un robot de récupérer le fichier lui-même. Le testeur en tient compte pour tout chemin égal à /robots.txt.
Quelle taille peut faire un fichier robots.txt ?
La RFC 9309 impose aux robots d'analyser au moins 500 kibioctets, et Google s'arrête là : les règles situées après les premiers 500 Kio sont ignorées. Un fichier proche de cette taille est généralement produit avec une ligne par URL, et regrouper les chemins avec des jokers le rend bien plus court et plus facile à maintenir. Le testeur grise toute ligne au-delà de la limite.
Pourquoi un chemin différent s'affiche-t-il sous mon URL ?
Le testeur compare les chemins comme le font les robots. Une URL complète est réduite à son chemin et à sa chaîne de requête, et l'encodage en pourcentage est normalisé : les caractères non ASCII sont encodés en UTF-8, et les séquences d'échappement de lettres, de chiffres et de - . _ ~ sont décodées. Ainsi, /caf%C3%A9 et /café, ou /%7Euser et /~user, correspondent aux mêmes règles. La forme normalisée s'affiche sous votre saisie quand elle diffère.

À propos de Testeur de robots.txt

Ce testeur implémente ce standard directement dans votre navigateur. Collez votre robots.txt, indiquez les URL ou chemins qui vous intéressent, un par ligne, et choisissez un robot : Googlebot et ses variantes images, actualités et vidéo, Bingbot, Applebot, DuckDuckBot, YandexBot, les robots d'IA comme GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot et CCBot, les robots d'aperçu de liens, les outils SEO ou n'importe quel jeton personnalisé. Pour chaque chemin, vous obtenez Autorisé ou Bloqué, la règle exacte qui a tranché avec son numéro de ligne, et la règle concurrente qu'elle a battue : un résultat comme "bloqué par Disallow: /*.pdf$ à la ligne 5" est donc facile à retrouver. La vue du fichier met en évidence le groupe qui s'applique au robot choisi et colore chaque ligne utilisée.

Le testeur signale aussi les problèmes qui font qu'un robots.txt se comporte autrement que prévu : règles placées avant toute ligne User-agent, directives inconnues ou mal orthographiées, URL complètes là où un chemin est attendu, marque d'ordre des octets UTF-8 en début de fichier, directives comme Noindex que les robots ne respectent plus, et fichiers dépassant les 500 Kio que lit Google. Il liste les lignes Sitemap et le Crawl-delay applicable, en rappelant que Google ignore Crawl-delay. Les particularités de chaque robot sont prises en compte : Googlebot-Image se rabat sur le groupe Googlebot, Applebot suit les règles de Googlebot quand il n'est pas nommé, et les robots AdsBot et AdSense ignorent complètement le groupe *. Rien n'est téléchargé ni envoyé : vous pouvez tester un brouillon avant sa mise en ligne.

Un standard qui a mis 28 ans à le devenir

Martijn Koster a proposé les règles d'exclusion des robots en février 1994 sur la liste de diffusion www-talk, après qu'un robot mal conçu eut surchargé son serveur chez Nexor. Fin juin, les auteurs de robots de l'époque s'étaient engagés à les suivre, et pendant le quart de siècle suivant tout le web a reposé sur une convention qui n'avait jamais été formellement normalisée. Chaque moteur de recherche interprétait les cas limites un peu différemment, des jokers à la taille du fichier.

En juillet 2019, pour les 25 ans de la proposition initiale, Google a soumis un brouillon à l'IETF avec Koster et d'autres moteurs de recherche, et a publié en open source l'analyseur C++ que Googlebot utilisait depuis vingt ans. Le brouillon a encore connu trois ans de relecture avant d'être publié sous le nom de RFC 9309 en septembre 2022. Les règles de base ont à peine changé depuis 1994, mais la RFC a enfin tranché les questions débattues pendant des décennies : Allow est officiel, la correspondance la plus longue l'emporte et les robots doivent lire au moins 500 Kio.

Soutenir