Blog · SEO

Robots.txt : fonctionnement, exemples et comment le tester

Le fichier robots.txt décide quelles URL les robots peuvent récupérer, et une seule ligne erronée peut masquer tout un site. Ce guide explique comment Google et la RFC 9309 lisent le fichier, ce que fait chaque code HTTP, des exemples prêts à copier, le piège robots.txt vs noindex, et comment corriger chaque problème signalé par un testeur de robots.txt.

Searvia · 24/10/2026 · Lecture : 17 min

Un agent de musée accrochant une corde entre des poteaux en laiton en travers de l'entrée d'une galerie avant l'ouverture

En bref : le robots.txt est un fichier texte brut situé à l'adresse /robots.txt, qui indique aux robots d'exploration quelles URL ils peuvent récupérer. Les règles sont regroupées par User-agent ; un robot utilise le groupe qui le nomme, ou le groupe * si aucun ne le nomme, et le chemin Allow ou Disallow correspondant le plus long l'emporte. Il contrôle l'exploration, pas l'indexation : pour garder une page hors de Google, utilisez noindex. Un code 404 signifie « explorez tout », un code 5xx signifie « arrêtez-vous ». La plupart des dégâts viennent d'une seule ligne, Disallow: /, oubliée depuis un site de préproduction.

Le robots.txt est le fichier le plus court de la plupart des sites web, et celui dont l'impact potentiel est le plus large. Un simple Disallow: / sous User-agent: * masque tout le site à Google, Bing, Apple et à chaque robot d'exploration des moteurs de recherche IA. Une barre oblique manquante, une règle placée dans le mauvais groupe ou une erreur serveur sur le fichier lui-même peuvent faire presque autant de dégâts, sans que rien ne semble cassé sur le site visible.

Ce guide explique comment les robots lisent le fichier selon la RFC 9309 et la spécification de Google, propose des exemples prêts à copier, montre comment notre testeur de robots.txt gratuit analyse votre fichier, et comment corriger chaque problème détecté.

Ce que fait le robots.txt, et ce qu'il ne fait pas

L'introduction de Google le dit clairement : un fichier robots.txt « indique aux robots des moteurs de recherche quelles URL ils peuvent consulter sur votre site », et sa fonction principale est de gérer le trafic des robots. Ce n'est « pas un mécanisme pour empêcher une page web d'apparaître dans Google ». Une URL interdite peut tout de même être indexée « si elle fait l'objet de liens depuis d'autres endroits du web », généralement affichée sans description.

Trois autres limites issues des mêmes sources :

La syntaxe

Un fichier robots.txt est une liste de groupes. Chaque groupe commence par une ou plusieurs lignes User-agent, suivies de règles Allow et Disallow. Les lignes Sitemap peuvent apparaître n'importe où.

# Comments start with a hash
User-agent: Googlebot
User-agent: Bingbot
Disallow: /cart/
Disallow: /search
Allow: /search/help

User-agent: *
Disallow: /admin/

Sitemap: https://www.example.com/sitemap.xml
ChampPris en charge par GoogleFonction
user-agentOuiDésigne le robot auquel s'applique le groupe ; * désigne tous les autres
disallowOuiPréfixe de chemin que le robot ne doit pas récupérer ; vide signifie que rien n'est interdit
allowOuiPréfixe de chemin que le robot peut récupérer, utilisé pour faire des exceptions
sitemapOuiURL absolue d'un sitemap ; non liée à un groupe
crawl-delayNonIgnoré par Google ; lu par d'autres robots, comme ceux d'Anthropic
noindex et tout le resteNonIgnoré

Les noms de champs ne sont pas sensibles à la casse ; les chemins le sont, donc Disallow: /Admin/ ne bloque pas /admin/. Deux caractères spéciaux sont pris en charge : * correspond à n'importe quelle suite de caractères, et $ marque la fin de l'URL. Disallow: /*.pdf$ bloque toutes les URL se terminant par .pdf ; Disallow: /*? bloque toutes les URL contenant une chaîne de requête.

Quel groupe s'applique à un robot

C'est la règle que l'on se trompe le plus souvent. Selon Google, « un seul groupe est valide pour un robot donné » : le groupe dont le user-agent correspond le plus précisément. Les groupes qui nomment le même agent sont fusionnés, mais un groupe nommé n'est pas combiné avec le groupe *. La RFC 9309 dit la même chose : les robots font correspondre leur jeton de produit sans tenir compte de la casse, combinent les groupes correspondants et ne se rabattent sur * que « si aucun groupe correspondant n'existe ».

Ainsi, dans le fichier ci-dessus, Googlebot ne suit que son propre groupe. Il peut explorer /admin/, car le groupe * ne s'applique pas à lui. Si une règle doit s'appliquer à tout le monde, répétez-la dans chaque groupe nommé.

Deux détails propres à certains robots méritent d'être connus. Le jeton Googlebot de Google couvre Search, Discover, Images, Video et News ; des jetons plus spécifiques comme Googlebot-Image permettent de contrôler un seul produit (robots d'exploration courants de Google). Et Apple indique que si le robots.txt ne mentionne pas Applebot mais mentionne Googlebot, Applebot suit les instructions destinées à Googlebot (About Applebot).

Quelle règle l'emporte

Au sein d'un groupe, la règle la plus spécifique s'applique, c'est-à-dire celle dont le chemin correspondant est le plus long. Lorsqu'une règle allow et une règle disallow correspondent à égalité, la moins restrictive, allow, l'emporte. L'ordre dans le fichier n'a pas d'importance.

RèglesURLRésultat
Disallow: /shop/ et Allow: /shop/sale//shop/sale/bootsAutorisée (correspondance plus longue)
Disallow: / et Allow: /$/Autorisée ; toutes les autres URL bloquées
Disallow: /*.php et Allow: /index.php/index.phpAutorisée
Disallow: /page/pages/aboutBloquée (correspondance par préfixe)
Disallow: (vide)n'importe laquelleAutorisée

Comment les codes HTTP changent tout

Les robots demandent /robots.txt avant toute autre chose, et son statut HTTP compte autant que son contenu. D'après la spécification de Google et la RFC 9309 :

Réponse du robots.txtComportement de GoogleRFC 9309
2xxTraite le fichier tel qu'il est serviUtiliser les règles
3xxSuit au moins cinq redirections, puis le traite comme un 404 ; ne suit ni les meta refresh ni le JavaScriptSuivre au moins cinq redirections
4xx sauf 429Comme si aucun robots.txt n'existait : aucune restrictionPeut accéder à n'importe quelle ressource
429, 5xx, délais dépassésArrête l'exploration pendant 12 heures en réessayant, puis utilise la dernière bonne copie pendant 30 jours maximum ; s'il n'y en a pas, suppose l'absence de restrictionsDoit supposer une interdiction totale

Conséquence pratique : un 404 sur le robots.txt est sans danger, mais un pare-feu ou un serveur qui répond 500 ou 503 pour le fichier peut stopper l'exploration de tout le site. Google déconseille aussi d'utiliser les codes 401 ou 403 pour limiter la fréquence d'exploration.

Deux limites complètent le tableau : Google met le fichier en cache jusqu'à 24 heures, les modifications ne sont donc pas instantanées, et il ignore le contenu au-delà de 500 Kio. Le fichier doit être en UTF-8.

robots.txt vs noindex

La documentation de Google sur noindex décrit le piège : si le robots.txt bloque une page, le robot ne voit jamais sa règle noindex, et la page peut quand même apparaître dans les résultats. Le bon outil dépend de l'objectif :

ObjectifÀ utiliser
Garder une page hors des résultats de rechercheBalise meta noindex ou en-tête X-Robots-Tag: noindex, avec l'exploration autorisée
Empêcher les robots de gaspiller des requêtes sur des filtres infinis ou la recherche interneDisallow dans le robots.txt
Garder un contenu privéAuthentification ; le robots.txt est public et tout le monde peut le lire
Retirer une page déjà indexéenoindex ou un 404/410, puis laisser Google réexplorer

Exemples de robots.txt prêts à copier

Tout autoriser et indiquer le sitemap (le bon fichier pour la plupart des petits sites) :

User-agent: *
Disallow:

Sitemap: https://www.example.com/sitemap.xml

Une boutique en ligne typique :

User-agent: *
Disallow: /cart/
Disallow: /checkout/
Disallow: /account/
Disallow: /*?sort=
Disallow: /*?filter=

Sitemap: https://www.example.com/sitemap.xml

Un site de préproduction (et uniquement un site de préproduction ; protégez-le aussi par un mot de passe) :

User-agent: *
Disallow: /

Recherche IA autorisée, entraînement des IA bloqué :

User-agent: OAI-SearchBot
User-agent: Claude-SearchBot
User-agent: PerplexityBot
Allow: /

User-agent: GPTBot
User-agent: ClaudeBot
User-agent: Google-Extended
User-agent: CCBot
Disallow: /

User-agent: *
Disallow: /admin/

Sitemap: https://www.example.com/sitemap.xml

Bloquer Google-Extended n'affecte pas Google Search ; Google précise que ce jeton « n'a pas d'incidence sur l'inclusion d'un site dans Google Search et n'est pas utilisé comme signal de classement ». Les AI Overviews et le mode IA reposent sur Googlebot (AI features and your website). OpenAI indique que refuser OAI-SearchBot vous exclut des réponses de la recherche ChatGPT : ne le bloquez donc pas, sauf si c'est ce que vous voulez (OpenAI crawlers). Notre guide des robots d'IA couvre tous les jetons d'IA.

Ne bloquez pas les CSS, le JavaScript ou les images nécessaires à l'affichage des pages. Google indique que l'on peut bloquer les ressources peu importantes si les pages « ne sont pas significativement affectées par leur absence », mais bloquer des fichiers qui portent votre contenu ou votre mise en page empêche Google de comprendre la page.

Comment fonctionne le testeur de robots.txt de Searvia

Le testeur de robots.txt utilise le même moteur que notre outil d'audit SEO de site web : saisissez un domaine ou l'adresse d'une page, et il lit cette page (votre page d'accueil si vous ne saisissez qu'un domaine) ainsi que les fichiers du site qui l'entourent, exécute 38 vérifications en une vingtaine de secondes, et affiche en premier les quatre vérifications qui concernent cet outil. Voici ce que fait chacune.

robots.txt (priorité moyenne). L'outil suit la page jusqu'à son adresse finale, puis demande /robots.txt sur ce même hôte, en suivant les redirections. Il interprète le code de statut comme dans le tableau ci-dessus : un 404 ou un autre 4xx signifie l'absence de fichier, un 5xx, un 429 ou l'absence de réponse signifie que le fichier est inaccessible, et un 200 qui renvoie une page HTML n'est pas un robots.txt valide. Il analyse le fichier comme le décrit la RFC 9309 : groupes User-agent (plusieurs lignes peuvent partager un même ensemble de règles), groupes en double fusionnés, repli sur *, Allow et Disallow avec les jokers * et $, commentaires, correspondance la plus longue avec égalité tranchée en faveur d'allow, et lignes Sitemap. Il vérifie ensuite si Googlebot peut récupérer le chemin de la page d'accueil / et, si vous avez saisi une page interne, le chemin de cette page.

Accès des robots d'IA (priorité haute). Le même analyseur s'exécute pour 10 jetons de robots : OAI-SearchBot, ChatGPT-User, PerplexityBot, Claude-SearchBot, Claude-User, Googlebot et Bingbot (étiquetés recherche IA), et GPTBot, ClaudeBot et CCBot (étiquetés entraînement IA), plus Google-Extended et Applebot-Extended, étiquetés comme jetons de désactivation de l'entraînement IA car ce ne sont pas des robots d'exploration. L'outil envoie aussi une requête qui s'identifie comme GPTBot pour voir si un pare-feu la refuse avec un 401, 403, 429 ou 503 ; comme la requête ne provient pas des adresses d'OpenAI, un refus est un avertissement, pas une preuve. La vérification échoue si un jeton de recherche est bloqué ou si le robots.txt est inaccessible ; les jetons d'entraînement bloqués sont listés mais considérés comme votre choix.

Sitemap XML (priorité moyenne). L'outil essaie chaque ligne Sitemap: de votre robots.txt, puis /sitemap.xml et /sitemap_index.xml (jusqu'à quatre adresses), et valide dès la première qui répond 200 avec un <urlset> ou un <sitemapindex>, en affichant le nombre d'URL.

Indexation autorisée (priorité haute). L'outil cherche noindex dans une balise meta robots ou googlebot de la page et dans l'en-tête de réponse X-Robots-Tag. L'un ou l'autre fait échouer la vérification, car il garde la page hors des résultats quoi que dise le robots.txt.

Ce qu'il ne teste pas

Lire le résultat

MessageSignificationPriorité
robots.txt is present and lets search engines in.Le fichier existe ; Googlebot peut explorer /Aucune
robots.txt blocks Google from the whole site.Le groupe de Googlebot, ou *, interdit /À corriger aujourd'hui
robots.txt blocks Google from this page.Le groupe de Googlebot, ou *, interdit la page saisieÀ corriger aujourd'hui
robots.txt answers with status N. / robots.txt could not be reached.Un 5xx ou 429, ou aucune réponse : Google suspend l'explorationÀ corriger aujourd'hui
robots.txt returns an HTML page instead of crawl rules.Une page web est servie à /robots.txt avec le statut 200Cette semaine
No robots.txt file was found, so crawlers may visit every page.Un 404 ou un autre 4xxFacultatif
robots.txt blocks N AI search crawlers.Un jeton d'IA de recherche ou de récupération à la demande ne peut pas lire la pageÀ corriger si vous voulez être cité par les IA
No XML sitemap was found in robots.txt or at /sitemap.xml.Aucun sitemap aux emplacements habituelsCette semaine
A noindex meta tag blocks indexing. / An X-Robots-Tag header blocks indexing.La page demande à être exclue de la rechercheÀ corriger aujourd'hui

Le rapport attribue une note de A+ à F pour l'ensemble des 38 vérifications, pondérées par priorité (haute 10, moyenne 5, basse 2 ; les avertissements valent la moitié), une liste « Fix these first » et un lien partageable. Chaque vérification indique aussi la part des sites audités qui la réussissent.

Comment corriger chaque problème signalé par le testeur

robots.txt blocks Google from the whole site

robots.txt is missing, unreachable or an HTML page

Le message vous indique de quel cas il s'agit ; confirmez le code de statut avec :

curl -I https://yourdomain.com/robots.txt

robots.txt blocks AI search crawlers

Trouvez le groupe qu'utilise chaque jeton bloqué (le sien, ou *) et décidez de votre politique jeton par jeton. Autorisez OAI-SearchBot, Claude-SearchBot et PerplexityBot si vous voulez être cité dans les réponses de ChatGPT, Claude et Perplexity ; bloquez séparément les jetons d'entraînement si vous le souhaitez. N'oubliez pas qu'un groupe nommé n'hérite pas des règles de *. Si le test du pare-feu a renvoyé un avertissement, la correction se trouve dans les réglages de votre CDN ou de votre WAF, pas dans le robots.txt ; consultez le guide des robots d'IA.

No XML sitemap was found

A noindex tag or X-Robots-Tag header blocks indexing

Exemple pratique (hypothétique)

L'exemple suivant est hypothétique, il ne repose sur aucune donnée réelle. Oakridge Dental, un cabinet inventé, relance son site et perd la majeure partie de son trafic Google en deux semaines. Le testeur de robots.txt indique :

VérificationRésultat
robots.txtÉchec : « robots.txt blocks Google from the whole site. »
Accès des robots d'IAÉchec : « robots.txt blocks 7 AI search crawlers. »
Sitemap XMLRéussite : index de sitemaps trouvé
Indexation autoriséeRéussite

Le fichier ne contient que User-agent: * et Disallow: /, copiés depuis le serveur de préproduction par le script de déploiement. La correction a pris dix minutes : l'équipe a remplacé le fichier par l'exemple « tout autoriser » accompagné de la ligne sitemap, exclu le robots.txt de la synchronisation de préproduction, demandé une réexploration dans la Search Console et relancé le testeur, qui a validé le fichier. Comme le fichier bloquait aussi Bingbot et les robots de recherche IA, la même correction a rétabli l'éligibilité du cabinet sur Bing, Copilot et dans les réponses IA.

Une checklist robots.txt en 15 minutes

Comment Searvia vous aide

Le testeur de robots.txt gratuit analyse votre fichier pour Googlebot, 9 autres robots d'IA et de recherche et 2 jetons de désactivation de l'entraînement IA, trouve votre sitemap et vérifie les signaux noindex dans un seul rapport partageable. Pour le reste du site, l'audit de site d'un compte Searvia explore vos pages comme le fait un moteur de recherche, respecte votre robots.txt, et signale chaque semaine les pages noindex présentes dans le sitemap, les pages cassées et les redirections : un mauvais déploiement est ainsi repéré en quelques jours plutôt qu'après une chute de trafic. Connectez la Search Console pour voir les pages « Blocked by robots.txt » et les tendances d'indexation à côté de l'audit, et lisez notre guide de l'audit SEO technique pour savoir où se situe le robots.txt dans la checklist complète.

Questions fréquentes

Qu'est-ce que le fichier robots.txt ?
Le robots.txt est un fichier texte brut placé à la racine d'un hôte, par exemple https://www.example.com/robots.txt, qui indique aux robots d'exploration quelles URL ils peuvent récupérer. Il est défini par la RFC 9309, le Robots Exclusion Protocol. Les règles sont regroupées par user-agent, comme Googlebot ou GPTBot, et utilisent des lignes Allow et Disallow avec des chemins d'URL. Les robots respectueux l'appliquent, mais ce n'est pas un contrôle d'accès.
Le robots.txt empêche-t-il une page d'apparaître dans Google ?
Non. Google indique que le robots.txt n'est pas un mécanisme pour empêcher une page web d'apparaître dans Google : une URL interdite peut quand même être indexée si d'autres pages pointent vers elle, généralement affichée sans description. Pour garder une page hors des résultats, autorisez l'exploration et ajoutez une balise meta noindex ou un en-tête X-Robots-Tag, ou protégez la page par un mot de passe.
Que se passe-t-il si mon site n'a pas de robots.txt ?
Si /robots.txt renvoie un 404 ou un autre statut 4xx (sauf 429), Google et la RFC 9309 le traitent comme une absence de restrictions : tout le site peut être exploré. C'est acceptable pour la plupart des sites. Une erreur 5xx ou un délai dépassé est différent : Google arrête l'exploration pendant 12 heures puis s'appuie sur sa dernière copie en cache, et la RFC 9309 demande aux robots de supposer une interdiction totale.
Google prend-il en charge crawl-delay ou noindex dans le robots.txt ?
Non. Google ne prend en charge que quatre champs dans le robots.txt : user-agent, allow, disallow et sitemap. Il ignore crawl-delay et toutes les autres lignes. Certains autres robots lisent crawl-delay ; Anthropic, par exemple, indique que ses robots le prennent en charge. Pour garder des pages hors de l'index de Google, utilisez plutôt une balise meta noindex ou un en-tête X-Robots-Tag.
Comment tester mon fichier robots.txt ?
Lancez un testeur de robots.txt pour vérifier que le fichier existe, s'il bloque Googlebot et les robots d'IA sur le site, et s'il indique votre sitemap. Utilisez ensuite le rapport robots.txt de Google Search Console pour voir quels fichiers Google a récupérés et les éventuels problèmes d'analyse, et l'outil d'inspection d'URL pour vérifier si une URL précise est bloquée.

Sources

  1. RFC 9309: Robots Exclusion Protocol – IETF
  2. How Google interprets the robots.txt specification – Google Search Central
  3. Introduction to robots.txt – Google Search Central
  4. Block Search indexing with noindex – Google Search Central
  5. robots.txt report – Search Console Help
  6. Google's common crawlers – Google Search Central
  7. About Applebot – Apple Support
  8. Overview of OpenAI Crawlers – OpenAI
  9. Does Anthropic crawl data from the web, and how can site owners block the crawler? – Claude Help Center
  10. Build and submit a sitemap – Google Search Central
  11. AI features and your website – Google Search Central

Continuer la lecture