Ce que fait robots.txt (et ce qu'il ne fait pas)
robots.txt est un fichier texte place a la racine de votre site (https://example.com/robots.txt) qui indique aux robots d'exploration les pages ou repertoires qu'ils doivent ou ne doivent pas visiter.
C'est un protocole de courtoisie, pas une mesure de securite. Limitations importantes :
- robots.txt s'applique uniquement aux robots qui choisissent de le respecter (tous les grands moteurs le font ; les scrapers malveillants non)
- Bloquer une URL dans robots.txt ne l'empeche pas d'etre indexee si d'autres sites la referent
- Il ne protege pas le contenu prive, utilisez l'authentification pour cela
- Les erreurs de syntaxe cassent silencieusement les regles ; un seul caractere mal place peut bloquer tout votre site
La syntaxe de base
Un fichier robots.txt se compose d'enregistrements, chacun specifiant un agent utilisateur et des directives :
User-agent: *
Disallow: /prive/
Allow: /public/
User-agent: Googlebot
Disallow: /staging/
Sitemap: https://example.com/sitemap.xml
User-agent:, quel robot les directives suivantes concernent. * signifie tous les robots.
Disallow:, chemins que le robot ne doit pas visiter. Un Disallow: vide signifie "ne rien interdire" (tout autoriser).
Allow:, autorise explicitement un chemin qui serait sinon bloque par une regle Disallow: plus large.
Sitemap:, optionnel, indique aux robots ou trouver votre sitemap XML.
Regles importantes
La correspondance des chemins est basee sur le prefixe
Disallow: /prive/ bloque toute URL commencant par /prive/, y compris /prive/page.html, /prive/images/, etc.
Disallow: /page.html bloque uniquement ce chemin exact.
Disallow: / bloque l'ensemble du site. C'est la syntaxe correcte pour bloquer tous les robots, mais elle s'applique a tout.
Wildcards
* dans un chemin Disallow: correspond a n'importe quelle sequence de caracteres :
Disallow: /*.pdf$, bloque tous les PDFDisallow: /recherche?, bloque toutes les URLs de resultats de recherche
Plusieurs user-agents pour un meme bloc
User-agent: Googlebot
User-agent: Bingbot
Disallow: /staging/
Erreurs courantes
Bloquer CSS et JavaScript
Si vos fichiers CSS et JavaScript sont dans un repertoire bloque (ex. /assets/), Googlebot ne peut pas rendre votre page correctement. Google rend les pages comme un navigateur et a besoin de vos assets pour voir la page telle que les utilisateurs la voient.
Confondre Disallow: et noindex
Disallow: arrete l'exploration. noindex (dans un en-tete HTTP ou une balise meta) arrete l'indexation. Ce sont des choses differentes :
- Une page bloquee par robots.txt peut quand meme etre indexee via des signaux d'autres pages
- Pour empecher a la fois l'exploration et l'indexation : utilisez
noindex(ne bloquez pas l'exploration, sinon Google ne peut pas voir la directive noindex)
Disallow: vide = tout autoriser
User-agent: *
Disallow:
Cela signifie "ne rien interdire", autorise tous les robots. C'est valide et souvent utilise comme indication que les robots sont les bienvenus.
Un robots.txt minimal et correct
Pour un site standard sans pages a cacher :
User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml
Cela autorise explicitement tous les robots et les pointe vers votre sitemap.
Valider votre robots.txt
Utilisez le testeur robots.txt de la Google Search Console (dans Parametres) pour valider votre fichier. Le Generateur robots.txt de ce site construit un fichier valide a partir d'un formulaire, en gerant la syntaxe correcte automatiquement.
En resume
robots.txt utilise les directives User-agent:, Disallow: et Allow: pour guider (sans forcer) le comportement des robots. Les erreurs courantes incluent le blocage des assets, la confusion entre interdire et desindexer, et l'utilisation incorrecte des wildcards. Validez toujours avant de deployer.