Les robots d’exploration
automatisés de Google
prennent en charge leRobots Exclusion Protocol (REP)
.
Cela signifie qu’avant d’explorer un site, les robots d’exploration de Google téléchargent et analysent le fichier robots.txt du site pour extraire des informations sur les parties du site qui peuvent être explorées. Le REP ne s’applique pas aux robots d’exploration de Google contrôlés par des utilisateurs (par exemple, les abonnements à des flux) ou aux robots d’exploration utilisés pour renforcer la sécurité des utilisateurs (par exemple, l’analyse des logiciels malveillants).
Cette page décrit l’interprétation du REP par Google. Pour consulter la norme d’origine,.

RFC 9309
Qu’est-ce qu’un fichier robots.txt
Si vous ne souhaitez pas que des robots d’exploration accèdent à des sections de votre site, vous pouvez créer un fichier robots.txt doté de règles appropriées. Un fichier robots.txt est un fichier texte contenant des règles indiquant quels robots d’exploration peuvent accéder à quelles parties d’un site. Par exemple, le fichier robots.txt pour example.com peut ressembler à ceci :
Si vous débutez avec robots.txt, commencez par notreintroduction à robots.txt
. Vous trouverez également.
des conseils pour créer un fichier robots.txt
Emplacement du fichier et plage de validité Vous devez placer le fichier robots.txt dans le répertoire de niveau supérieur d'un site, sur un protocole pris en charge. L'URL du fichier robots.txt est sensible à la casse (comme les autres URL). Dans le cas de Google Search, les protocoles pris en charge sont HTTP, HTTPS et FTP. Sur HTTP et HTTPS, les robots d'exploration récupèrent le fichier robots.txt avec une requête GET HTTP non conditionnelle ; sur FTP, les robots d'exploration utilisent une commande RETR (RETRIEVE)

standard, en utilisant une connexion anonyme.
Les règles répertoriées dans le fichier robots.txt s’appliquent uniquement à l’hôte, au protocole et au numéro de port sur lesquels le fichier robots.txt est hébergé.
Exemples d’URL robots.txt valides
| Le tableau suivant contient des exemples d’URL robots.txt et les chemins d’accès URL pour lesquels ils sont valides. La première colonne contient l’URL d’un fichier robots.txt et la deuxième colonne contient les domaines auxquels ce fichier robots.txt s’appliquerait ou ne s’appliquerait pas. | |
|---|---|
Exemples d'URL robots.txt | https://example.com/robots.txt Il s’agit du cas général. Il n’est pas valide pour d’autres sous-domaines, protocoles ou numéros de port. Il est valide pour tous les fichiers de tous les sous-répertoires sur le même hôte, protocole et numéro de port.
https://example.com/folder/file
|
https://example.com:8181/ | https://www.example.com/robots.txt Un fichier robots.txt sur un sous-domaine n’est valide que pour ce sous-domaine. https://www.example.com/
|
https://example.com/folder/robots.txt | Fichier robots.txt non valide. Les robots d’indexation ne recherchent pas les fichiers robots.txt dans les sous-répertoires. |
https://www.exämple.com/robots.txt | Les IDN sont équivalents à leurs versions punycode. Voir aussi Valide pour :
Non valide pour : |
ftp://example.com/robots.txt | Valide pour : Non valide pour : |
https://212.96.82.21/robots.txt | Un fichier robots.txt avec une adresse IP comme nom d’hôte n’est valable que pour l’exploration de cette adresse IP en tant que nom d’hôte. Il n’est pas automatiquement valable pour tous les sites Web hébergés sur cette adresse IP (bien qu’il soit possible que le fichier robots.txt soit partagé,auquel cas il serait également disponible sous le nom d’hôte partagé). Valide pour : Non valide pour : |
https://example.com:443/robots.txt | Les numéros de port standard ( Valide pour :
Non valide pour : |
https://example.com:8181/robots.txt | Les fichiers robots.txt sur des numéros de port non standard ne sont valables que pour le contenu disponible via ces numéros de port. Valide pour : Non valide pour : |
Gestion des erreurs et des codes d’état HTTP
Lors de la demande d’un fichier robots.txt, le code d’état HTTP de la réponse du serveur influe sur la manière dont le fichier robots.txt sera utilisé par les robots d’exploration de Google. Le tableau suivant résume la façon dont Googlebot traite les fichiers robots.txt pour différents codes d’état HTTP.
| Gestion des erreurs et des codes d’état HTTP | |
|---|---|
2xx (succès) | Les codes d’état HTTP qui signalent un succès incitent les robots d’exploration de Google à traiter le fichier robots.txt tel qu’il est fourni par le serveur. |
3xx (redirection) | Google suit au moins cinq sauts de redirection tels que définis par Google ne suit pas les redirections logiques dans les fichiers robots.txt (frames, JavaScript ou |
4xx (erreurs client) | Les robots d’exploration de Google traitent tous les |
5xx (erreurs de serveur) | Si Google trouve un fichier robots.txt mais ne peut pas le récupérer, Google adopte le comportement suivant :
|
| Autres erreurs | Un fichier robots.txt qui ne peut pas être récupéré en raison de problèmes DNS ou réseau, tels que des délais d’attente dépassés, des réponses non valides, des connexions réinitialisées ou interrompues, et des erreurs de segmentation HTTP, est traité comme un erreur de serveur. |
Mise en cache
Google met généralement en cache le contenu du fichier robots.txt pendant un maximum de 24 heures, mais peut le mettre en cache plus longtemps dans les situations où la mise à jour de la version mise en cache n’est pas possible (par exemple, en raison de délais d’attente ou de 5xx erreurs). La réponse mise en cache peut être partagée par différents robots d’exploration.
Google peut augmenter ou diminuer la durée de vie du cache en fonction de
max-age Cache-Control
En-têtes HTTP.
Format de fichier
Le fichier robots.txt doit être un
UTF-8 fichier texte brut encodé et les lignes doivent être séparées par CR, CR/LF, ou
LF.
Google ignore les lignes non valides dans les fichiers robots.txt, y compris le
Marque d’ordre des octets
(BOM) au début du fichier robots.txt, et n’utilise que les lignes valides. Par exemple, si le contenu téléchargé est du HTML au lieu de règles robots.txt, Google essaiera d’analyser le contenu et d’extraire les règles, et ignorera tout le reste.
De même, si l’encodage des caractères du fichier robots.txt n’est pas UTF-8, Google peut ignorer les caractères qui ne font pas partie de la plage UTF-8, rendant potentiellement les règles robots.txt invalides.
Google applique une limite de taille de fichier robots.txt de 500
kibioctets (KiB). Le contenu situé après la taille maximale de fichier est ignoré. Vous pouvez réduire la taille du fichier robots.txt en consolidant les règles qui entraîneraient un fichier robots.txt surdimensionné. Par exemple, placez le contenu exclu dans un répertoire séparé.
Syntaxe
Une ligne robots.txt valide se compose d’un champ, d’un deux-points et d’une valeur. Les noms de champs ne sont pas sensibles à la casse (par exemple, User-agent et user-agent sont traités de la même manière). Les espaces sont optionnels, mais recommandés pour améliorer la lisibilité. Les espaces au début et à la fin de la ligne sont ignorés. Pour inclure des commentaires, faites précéder votre commentaire par le
# caractère. Gardez à l’esprit que tout ce qui suit le # caractère sera ignoré. Le format général est
<field>:<value><#optional-comment>.
Google prend en charge les champs suivants (les autres champs tels que crawl-delay ne sont pas pris en charge) :
user-agent: identifie le robot d’indexation auquel les règles s’appliquent.allow: un chemin d’URL qui peut être exploré.disallow: un chemin d’URL qui ne peut pas être exploré.sitemap: l’URL complète d’un sitemap.
Le allow et disallow les champs sont également appelés règles (également connues sous le nom de
directives). Ces règles sont toujours spécifiées sous la forme de
règle : [path] où [path] est facultatif. Par défaut, il n’y a pas de restrictions d’exploration pour les robots désignés. Les robots ignorent les règles sans
[path].
Le [path] valeur, si elle est spécifiée, est relative à la racine du site Web à partir duquel le fichier robots.txt a été récupéré (en utilisant le même protocole, le même numéro de port, les mêmes noms d’hôte et de domaine). La valeur du chemin doit commencer par / pour désigner la racine et la valeur est sensible à la casse. En savoir plus sur
la correspondance d’URL basée sur les valeurs de chemin.
user-agent
La user-agent ligne identifie les règles de robot auxquelles elle s’applique. Voir
Les robots d’exploration et chaînes user-agent de Google
pour une liste complète des chaînes user-agent que vous pouvez utiliser dans votre fichier robots.txt.
Le nom du champ user-agent et sa valeur ne sont pas sensibles à la casse.
disallow
La disallow règle spécifie les chemins d’accès auxquels les robots identifiés par la ligne user-agent avec laquelle la règle disallow est regroupée ne doivent pas accéder.
Les robots ignorent la règle sans chemin.
Google ne peut pas indexer le contenu des pages dont l’exploration est interdite, mais il peut toujours indexer l’URL et l’afficher dans les résultats de recherche sans extrait. Apprenez à
bloquer l’indexation.
Le nom du champ (disallow) n’est pas sensible à la casse, mais sa valeur est sensible à la casse.
Utilisation :
allow
La allow règle spécifie les chemins d’accès auxquels les robots désignés peuvent accéder. Lorsqu’aucun chemin n’est spécifié, la règle est ignorée.
Le nom du champ (allow) n’est pas sensible à la casse, mais sa valeur est sensible à la casse.
Utilisation :
sitemap
Google, Bing et les autres principaux moteurs de recherche prennent en charge le champ sitemap dans
robots.txt, tel que défini par sitemaps.org.
Le nom du champ (sitemap) n’est pas sensible à la casse, mais sa valeur est sensible à la casse.
Utilisation :
La ligne [absoluteURL] pointe vers l’emplacement d’un sitemap ou d’un fichier d’index de sitemaps. Il doit s’agir d’une URL entièrement qualifiée, incluant le protocole et l’hôte, et elle n’a pas besoin d’être encodée en URL. L’URL ne doit pas nécessairement se trouver sur le même hôte que le fichier robots.txt. Vous pouvez spécifier plusieurs champs sitemap sans limite quant au nombre de sitemaps que vous pouvez inclure. Le champ sitemap n’est lié à aucun agent utilisateur spécifique et peut être suivi par tous les robots d’indexation, à condition qu’il ne soit pas interdit pour l’exploration.
Par exemple :
Regroupement de lignes et de règles
Vous pouvez regrouper des règles qui s’appliquent à plusieurs agents utilisateurs en répétant les lignes
user-agent pour chaque robot d’indexation.
Par exemple :
Dans cet exemple, il y a quatre groupes de règles distincts :
- Un groupe pour l’agent utilisateur “a”.
- Un groupe pour l’agent utilisateur “b”.
- Un groupe pour les agents utilisateurs “e” et “f”.
- Un groupe pour l’agent utilisateur “h”.
Pour la description technique d’un groupe, voir
la section 2.1 du REP.
Ordre de priorité des agents utilisateurs
Un seul groupe est valide pour un robot d’indexation particulier. Les robots de Google déterminent le bon groupe de règles en trouvant dans le fichier robots.txt le groupe avec l’agent utilisateur le plus spécifique qui correspond à l’agent utilisateur du robot. Les autres groupes sont ignorés. Tout texte non concordant est ignoré (par exemple, à la fois googlebot/1.2 et googlebot* sont
équivalents à googlebot). L’ordre des groupes dans le fichier robots.txt n’a pas d’importance.
Si plusieurs groupes spécifiques sont déclarés pour un agent utilisateur, toutes les règles des groupes applicables à l’agent utilisateur spécifique sont combinées en interne en un seul groupe. Les groupes spécifiques aux agents utilisateurs et les groupes globaux (*) ne sont pas combinés.
Exemples
Correspondance des champs user-agent
Voici comment les robots d’exploration choisiraient le groupe pertinent :
| Groupe suivi par robot d’exploration | |
|---|---|
| Googlebot News | googlebot-news suit le groupe 1, car le groupe 1 est le groupe le plus spécifique. |
| Googlebot (web) | googlebot suit le groupe 3. |
| Googlebot Storebot | Storebot-Google suit le groupe 2, car il n’y a pas deStorebot-Google groupe spécifique. |
| Googlebot News (lors de l’exploration d’images) | Lors de l’exploration d’images, googlebot-news suit le groupe 1.googlebot-news n’explore pas les images pour Google Images, il nesuit donc que le groupe 1. |
| Otherbot (web) | Les autres robots d’exploration de Google suivent le groupe 2. |
| Otherbot (actualités) | Les autres robots d’exploration de Google qui explorent du contenu d’actualités, mais ne s’identifient pas commegooglebot-news suivent le groupe 2. Même s’il existe une entrée pour un robot d’exploration associé, elle n’est valide que si elle correspond spécifiquement. |
Regroupement des règles
S’il existe plusieurs groupes dans un fichier robots.txt qui concernent un user-agent spécifique,
les robots d’exploration de Google fusionnent les groupes en interne. Par exemple :
Les robots d’exploration regroupent en interne les règles en fonction du user-agent, par exemple :
Les règles autres que allow, disallowet user-agent sont
ignorées par l’analyseur robots.txt. Cela signifie que l’extrait robots.txt suivant est traité
comme un seul groupe et que par conséquent, à la fois user-agent a et b sont affectés par disallow: / rule:
Lorsque les robots d’exploration traitent les règles du fichier robots.txt, ils ignorent la sitemap ligne.
Par exemple, voici comment les robots d’exploration comprendraient l’extrait robots.txt précédent :
Correspondance d’URL basée sur les valeurs de chemin d’accès
Google utilise la valeur du chemin d’accès dans les règles allow et disallow comme base pour déterminer si une règle s’applique ou non à une URL spécifique sur un site. Pour ce faire, la règle est comparée au composant de chemin d’accès de l’URL que le robot d’exploration essaie de récupérer.
Le chemin d’accès dans les règles peut être soit des caractères UTF-8 bruts, soit des chaînes UTF-8 encodées en pourcentage
(conformément à RFC 3986).
Comme défini dans RFC 9309 Section 2.2.2,
les robots d’exploration de Google comparent les règles aux URL en utilisant leurs formes encodées en pourcentage et convertissent automatiquement les chemins de règles UTF-8 bruts en formes encodées en pourcentage. Cela signifie que, par exemple,
Disallow: /foo/bar/ツ et Disallow: /foo/bar/%E3%83%84 sont traités de manière identique par l’analyseur syntaxique.
Google, Bing et les autres principaux moteurs de recherche prennent en charge une forme limitée de wildcards pour les valeurs de chemin d’accès. Ces caractères génériques sont :
*désigne 0 occurrence ou plus de n’importe quel caractère valide.$désigne la fin de l’URL.
Le tableau suivant montre comment les différents caractères génériques affectent l’analyse :
| Exemples de correspondances de chemin | |
|---|---|
/ | Correspond à la racine et à toute URL de niveau inférieur. |
/* | Équivalent à /. Le caractère générique de fin est ignoré. |
/$ | Correspond uniquement à la racine. Toute URL de niveau inférieur est autorisée pour l’exploration. |
/fish | Correspond à tout chemin commençant par Correspond à :
Ne correspond pas :
|
/fish* | Équivalent à : Correspond :
Ne correspond pas :
|
/fish/ | Correspond à tout dans le dossier Correspond :
Ne correspond pas :
|
/*.php | Correspond à tout chemin contenant Correspond :
Ne correspond pas :
|
/*.php$ | Correspond à tout chemin qui se termine par Correspond à :
Ne correspond pas :
|
/fish*.php | Correspond à tout chemin qui contient Correspond à :
Ne correspond pas :
|
Ordre de priorité des règles
Lors de la mise en correspondance des règles robots.txt avec les URL, les robots d’indexation utilisent la règle la plus spécifique en fonction de la longueur du chemin de la règle. En cas de règles contradictoires, y compris celles avec des caractères génériques, Google utilise la règle la moins restrictive.
Les exemples suivants montrent quelle règle les robots d’indexation de Google appliqueront sur une URL donnée.
| Exemples de situations | |
|---|---|
https://example.com/page | Règle applicable: |
https://example.com/folder/page | Règle applicable: |
https://example.com/page.htm | Règle applicable: |
https://example.com/page.php5 | Règle applicable: |
https://example.com/ | Règle applicable: |
https://example.com/page.htm | Règle applicable: |
Comment nous l'appliquons
The formal specification resolves the arguments that the introductory guide leaves open, particularly around precedence and wildcards. We cite it directly when a developer and an SEO disagree about whether a rule applies.
Services associés