⚙️ SEO Technique
Robots.txt
Le fichier robots.txt indique aux robots des moteurs de recherche quelles pages ils peuvent ou ne peuvent pas explorer sur un site web.
Définition
Le robots.txt est un fichier texte placé à la racine d’un site web (exemple.com/robots.txt) qui donne des instructions aux robots d’exploration des moteurs de recherche. Il indique quelles parties du site peuvent être crawlées et lesquelles doivent être ignorées.
À quoi sert le robots.txt ?
| Fonction | Explication |
|---|
| Gérer le crawl | Orienter les robots vers les pages importantes |
| Économiser le crawl budget | Éviter de gaspiller des ressources sur des pages inutiles |
| Protéger des ressources | Bloquer l’accès à des zones non publiques |
| Indiquer le sitemap | Signaler l’emplacement du sitemap XML |
Structure de base
Le robots.txt utilise une syntaxe simple avec quelques directives :
| Directive | Rôle | Exemple |
|---|
| User-agent | Spécifie le robot concerné | User-agent: Googlebot |
| Disallow | Interdit l’accès à un chemin | Disallow: /admin/ |
| Allow | Autorise explicitement (override) | Allow: /admin/public/ |
| Sitemap | Indique l’URL du sitemap | Sitemap: https://site.com/sitemap.xml |
| Crawl-delay | Délai entre requêtes (pas Google) | Crawl-delay: 10 |
Exemples de robots.txt
Site standard
User-agent: *
Disallow: /admin/
Disallow: /tmp/
Disallow: /private/
Sitemap: https://example.com/sitemap.xml
Site e-commerce
User-agent: *
# Pages techniques
Disallow: /cart/
Disallow: /checkout/
Disallow: /account/
Disallow: /api/
# Filtres et tri (évite le duplicate content)
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*?page=
# Recherche interne
Disallow: /search?
Sitemap: https://shop.com/sitemap.xml
WordPress
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/cache/
# Éviter duplication
Disallow: /tag/
Disallow: /author/
Disallow: /?s=
Sitemap: https://site.com/sitemap_index.xml
Règles de syntaxe
Wildcards (caractères génériques)
| Pattern | Signification | Exemple |
|---|
* | N’importe quelle séquence | Disallow: /*.pdf bloque tous les PDF |
$ | Fin d’URL | Disallow: /*.pdf$ bloque uniquement les .pdf |
Priorité des règles
- Le User-agent le plus spécifique gagne sur
*
- La règle la plus longue (spécifique) gagne
Allow peut override Disallow si plus spécifique
Exemple :
User-agent: *
Disallow: /dossier/
Allow: /dossier/public/
→ /dossier/public/page.html sera crawlé car Allow est plus spécifique.
Erreurs fréquentes à éviter
Blocages dangereux
| Erreur | Conséquence | Solution |
|---|
Disallow: / | Bloque TOUT le site | Ne jamais faire sauf maintenance |
| Bloquer CSS/JS | Google ne peut pas rendre la page | Toujours autoriser les assets |
| Bloquer le sitemap | Google ne trouve pas vos pages | Ne jamais bloquer |
Erreurs de syntaxe
| Erreur | Problème | Correction |
|---|
Disallow: admin | Manque le / initial | Disallow: /admin/ |
Disallow: /a/ /b/ | Plusieurs valeurs sur une ligne | Une directive par ligne |
| Fichier mal encodé | Caractères non reconnus | Utiliser UTF-8 sans BOM |
Ce que robots.txt ne fait PAS
| Idée reçue | Réalité |
|---|
| ”Ça empêche l’indexation” | Non ! Utilisez noindex pour ça |
| ”Ça protège les données sensibles” | Non ! Les pages restent accessibles |
| ”Ça supprime des pages de l’index” | Non ! Ça empêche juste le crawl |
Important : Si une page est bloquée par robots.txt mais reçoit des backlinks, Google peut quand même l’indexer (sans voir son contenu).
| Robots.txt | Meta robots / X-Robots-Tag |
|---|
| Bloque le crawl | Contrôle l’indexation |
| Fichier unique | Par page |
| Économise le crawl budget | N’économise rien |
| Ne désindexe pas | Peut désindexer (noindex) |
Pour désindexer une page :
- Ne PAS bloquer dans robots.txt
- Ajouter
<meta name="robots" content="noindex">
- Google doit pouvoir crawler pour voir le noindex
Tester votre robots.txt
Outils de test
| Outil | Utilisation |
|---|
| Google Search Console | Test officiel Google (Paramètres > robots.txt) |
| Bing Webmaster Tools | Test pour Bingbot |
| Screaming Frog | Vérification lors d’un crawl |
Vérifications essentielles
- Le fichier est accessible à
votresite.com/robots.txt
- Pas de blocage accidentel des pages importantes
- CSS et JavaScript sont autorisés
- Le sitemap est déclaré
Robots.txt et crawl budget
Pour les gros sites (>10 000 pages), le robots.txt aide à optimiser le crawl budget :
| Action | Impact |
|---|
| Bloquer les filtres e-commerce | Économise des milliers de crawls |
| Bloquer la pagination profonde | Concentre le crawl sur les pages importantes |
| Bloquer les paramètres de session | Évite les doublons |
| Bloquer les pages techniques | Focus sur le contenu |
User-agents principaux
| Robot | User-agent | Ce qu’il crawle |
|---|
| Google | Googlebot | Web général |
| Google Images | Googlebot-Image | Images |
| Google Ads | AdsBot-Google | Landing pages Ads |
| Bing | Bingbot | Web Bing |
| Yahoo | Slurp | Web Yahoo |
Bonnes pratiques
- Gardez-le simple : Ne compliquez pas inutilement
- Testez avant de déployer : Une erreur peut désindexer votre site
- Ne bloquez jamais Googlebot sans raison : Perte de trafic garantie
- Documentez vos règles : Ajoutez des commentaires avec
#
- Vérifiez régulièrement : Après chaque modification technique du site
Conclusion
Le robots.txt est un outil simple mais puissant pour guider les moteurs de recherche. Il ne doit pas être utilisé pour cacher du contenu ou empêcher l’indexation (utilisez noindex pour ça), mais plutôt pour optimiser le crawl et protéger votre crawl budget. Un robots.txt mal configuré peut avoir des conséquences désastreuses sur votre SEO.