robots.txt : guide complet pour ne pas bloquer les mauvais robots
Qu'est-ce que robots.txt ?
Le fichier robots.txt est un fichier texte placé à la racine du site (/robots.txt) qui indique aux robots de crawl quelles pages et dossiers ils peuvent ou non consulter. C'est le premier fichier lu par tout crawler avant d'explorer le site. Une erreur de configuration peut bloquer l'indexation de l'intégralité du site — ou, à l'inverse, autoriser des bots indésirables.
Contrairement au noindex (qui demande à Google de ne pas indexer une page qu'il a déjà lue), robots.txt empêche le robot de lire la page. Si une page est bloquée dans robots.txt, Google ne peut pas voir la balise noindex qu'elle contient — paradoxalement, elle peut rester indexée si elle est découverte via un lien externe.
Syntaxe et directives
Les 3 directives
| Directive | Rôle | Exemple |
|---|---|---|
User-agent | Identifie le robot concerné | User-agent: * (tous les robots) |
Allow | Autorise l'accès à un chemin | Allow: / |
Disallow | Interdit l'accès à un chemin | Disallow: /admin/ |
Directives supplémentaires
| Directive | Rôle |
|---|---|
Crawl-delay | Retard entre 2 requêtes (seul Bingbot et quelques bots l'honorent) |
Sitemap | Référence le sitemap XML (facilite la découverte) |
Host | Domaine principal (reconnu uniquement par Yandex) |
Ordre de priorité
- La directive la plus spécifique l'emporte (ex.
Disallow: /admin/secrets/batAllow: /admin/). - Si aucune directive ne matche, l'accès est autorisé par défaut.
- Un
User-agent: nom-specifiquebat unUser-agent: *pour ce robot.
Les bots IA à autoriser (2026)
Pour le GEO, il est essentiel d'autoriser les crawlers des moteurs IA. Voici la liste complète des user-agents à connaître :
| User-Agent | Éditeur | Rôle | À autoriser ? |
|---|---|---|---|
GPTBot | OpenAI | Indexation pour ChatGPT Search | Oui |
ChatGPT-User | OpenAI | Browsing en temps réel (mode recherche) | Oui |
PerplexityBot | Perplexity AI | Crawl pour l'index Perplexity | Oui |
ClaudeBot | Anthropic | Indexation pour Claude | Oui |
Google-Extended | Entraînement Gemini / IA Google | Oui | |
Googlebot | Index Google standard | Oui (obligatoire) | |
bingbot | Microsoft | Index Bing (utilisé par Copilot + ChatGPT) | Oui |
MicrosoftPreview | Microsoft | Fonctionnalités IA Microsoft | Oui |
CCBot | Common Crawl | Dataset open source (source de nombreux LLMs) | Oui (recommandé) |
Amazonbot | Amazon | Indexation pour Alexa / AWS | Optionnel |
Par défaut : si votre robots.txt ne mentionne pas un bot, il est autorisé (à condition de ne pas avoir de User-agent: * avec Disallow: /). Le problème n'est pas d'oublier d'autoriser, c'est de bloquer par inadvertance.
Les 6 règles d'or
| # | Règle | Pourquoi |
|---|---|---|
| 1 | Jamais de Disallow: / global | Bloque tout le site pour tous les robots → invisible sur Google et les IA |
| 2 | Referencer le sitemap | Sitemap: https://yperline.net/sitemap.xml → découverte accélérée |
| 3 | Bloquer uniquement l'admin et le temporaire | /admin/, /tmp/, /wp-admin/ — pas le contenu |
| 4 | Ne pas bloquer les bots IA | Un Disallow: / sous User-agent: GPTBot = invisible sur ChatGPT |
| 5 | Ne pas utiliser robots.txt pour le noindex | Bloquer une page = le robot ne peut pas lire le noindex → la page reste indexée |
| 6 | Tester avant de modifier | Un robots.txt invalide (erreur de syntaxe) est ignoré → les robots crawlent tout, ou rien selon l'implémentation |
Exemples concrets
robots.txt minimal (recommandé pour YperLine)
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /tmp/
Sitemap: https://yperline.net/sitemap.xml
robots.txt avec blocage sélectif
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /tmp/
Disallow: /images/
Disallow: /assets/
# Bloquer un seul bot spécifique (ex. un bot de scraping agressif)
User-agent: BadBot
Disallow: /
Sitemap: https://yperline.net/sitemap.xml
robots.txt avec autorisation explicite des bots IA (défensive)
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /tmp/
# Autorisation explicite (redondante si pas de Disallow global, mais sécurise)
User-agent: GPTBot
Allow: /
User-agent: ChatGPT-User
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: Google-Extended
Allow: /
User-agent: MicrosoftPreview
Allow: /
Sitemap: https://yperline.net/sitemap.xml
Note : l'autorisation explicite est redondante si vous n'avez pas de Disallow: / global. Elle est utile comme documentation et comme filet de sécurité si quelqu'un ajoute un Disallow: / par erreur dans le futur.
Les 5 erreurs qui coûtent cher
| # | Erreur | Conséquence | Correction |
|---|---|---|---|
| 1 | User-agent: * Disallow: / | Site invisible sur tous les moteurs | Remplacer par Allow: / |
| 2 | Bloquer /images/ ou /css/ | Google ne peut pas analyser le rendu visuel → perte de signal | Ne bloquer que les dossiers non nécessaires au contenu |
| 3 | Bloquer GPTBot ou PerplexityBot | Invisible sur ChatGPT et Perplexity → zéro citation GEO | Supprimer le Disallow ou ajouter un Allow explicite |
| 4 | Utiliser robots.txt pour masquer une page sensible | La page reste indexée (le robot ne lit pas le noindex) | Utiliser <meta name="robots" content="noindex"> dans le HTML |
| 5 | Erreur de syntaxe (espace manquant, faute de frappe) | Fichier ignoré par certains robots → comportement imprévisible | Valider avec l'outil de test GSC |
Vérifier son robots.txt
- Accès direct : taper
https://yperline.net/robots.txtdans le navigateur. Le fichier doit s'afficher en texte brut (content-typetext/plain). - Google Search Console → « Paramètres » → « Robots.txt Tester » : coller une URL et vérifier si elle est autorisée ou bloquée.
- Log serveur : vérifier que les bots IA visitent le site. Filtrer les logs sur
GPTBot,PerplexityBot,Google-Extended. Si aucune requête dans les 7 derniers jours, soit le bot ne vous a pas encore visité, soit il est bloqué. - Test inversé : sur Perplexity, taper le nom de votre marque. Si des pages apparaissent, le bot a bien crawlé.
Checklist robots.txt
| # | Point de contrôle | Statut |
|---|---|---|
| 1 | Fichier accessible à /robots.txt (HTTP 200) | ☐ |
| 2 | Pas de Disallow: / global | ☐ |
| 3 | Googlebot autorisé (pas de Disallow spécifique) | ☐ |
| 4 | GPTBot + ChatGPT-User autorisés | ☐ |
| 5 | PerplexityBot autorisé | ☐ |
| 6 | ClaudeBot autorisé | ☐ |
| 7 | Google-Extended autorisé | ☐ |
| 8 | bingbot + MicrosoftPreview autorisés | ☐ |
| 9 | Sitemap référencé (Sitemap: https://…) | ☐ |
| 10 | Seuls /admin/ et /tmp/ sont bloqués | ☐ |
| 11 | Validé dans GSC (outil de test robots.txt) | ☐ |
| 12 | Log serveur : bots IA visibles dans les 7 derniers jours | ☐ |
Pour le sitemap (complémentaire), voir Sitemap XML : guide complet. Pour le GEO (pourquoi les bots IA comptent), voir Guide GEO. Pour la vue d'ensemble du SEO technique, voir SEO technique.
Vérifiez que vos bots IA ne sont pas bloqués
Audit SEO gratuit : nous analysons votre robots.txt, votre sitemap et vos logs de crawl. Vous savez en 15 minutes si ChatGPT, Perplexity et Gemini peuvent lire votre site.
Demander mon audit gratuit