Définition de la directive Allow
Le fichier robots.txt contient des instructions destinées aux robots d'exploration (Googlebot, Yandexbot, Bingbot, etc.). La directive Disallow interdit l'accès à un chemin ou une section, tandis que la directive Allow crée une exception en autorisant explicitement l'accès à une URL précise au sein d'une zone bloquée.
La directive Allow n'est pas une directive universelle du standard robots.txt d'origine. Elle a été introduite par Google et est aujourd'hui reconnue par la plupart des moteurs modernes. Son absence dans le standard initial explique pourquoi elle est parfois absente de configurations de robots.txt plus anciennes ou générées automatiquement.
Syntaxe et exemples d'utilisation
La syntaxe est identique à celle de Disallow :
User-agent: Googlebot
Disallow: /espace-client/
Allow: /espace-client/mentions-legales/
Dans cet exemple, tout le répertoire /espace-client/ est bloqué sauf la page des mentions légales. Google respectera cette règle et n'explorera que ce chemin spécifique dans cette section.
Autre cas typique : bloquer un répertoire entier mais autoriser ses ressources CSS et JavaScript pour que Google puisse quand même rendre les pages correctement.
User-agent: Googlebot
Disallow: /assets/
Allow: /assets/styles/main.css
Allow: /assets/scripts/app.js
Allow vs Disallow : règles de priorité
Quand les deux directives s'appliquent à la même URL, Google applique la règle la plus spécifique (c'est-à-dire celle dont le chemin est le plus long).
| Règle 1 | Règle 2 | URL testée | Résultat |
|---|---|---|---|
Disallow: /dossier/ |
Allow: /dossier/page.html |
/dossier/page.html |
Autorisé (Allow plus spécifique) |
Disallow: /dossier/page.html |
Allow: /dossier/ |
/dossier/page.html |
Bloqué (Disallow plus spécifique) |
Disallow: / |
Allow: /page/ |
/page/ |
Autorisé (Allow plus spécifique) |
En cas d'égalité de longueur, Google donne la priorité à Allow. Ce comportement est documenté dans les consignes officielles pour les développeurs.
Limites et précautions
Quelques points importants à garder en tête sur la directive Allow :
- Elle n'est pas universelle : certains robots peu scrupuleux ignorent aussi bien
DisallowqueAllow. Le robots.txt est une convention, pas un blocage technique réel. - Elle ne remplace pas une balise noindex : si une page est accessible mais ne doit pas être indexée, c'est la balise
noindexqui s'impose, pas une absence deDisallow. L'indexation Google se contrôle à deux niveaux distincts. - Le robots.txt ne cache pas les URLs : une URL bloquée dans robots.txt peut quand même apparaître dans les résultats si des liens externes pointent vers elle. Google peut indexer l'URL sans en avoir exploré le contenu.
- Tester la configuration : la Google Search Console propose un outil de test du robots.txt qui permet de vérifier si une URL spécifique sera crawlée ou non par Googlebot.
Pour une configuration sans erreur du robots.txt, un outil comme Screaming Frog permet d'auditer les directives appliquées à l'ensemble du site et de repérer les pages utiles bloquées par inadvertance.
Questions fréquentes sur la directive Allow
La directive Allow dans robots.txt permet d'autoriser explicitement l'exploration d'URLs précises au sein d'une zone globalement bloquée par Disallow. Par exemple, si vous bloquez tout le dossier /admin/ avec Disallow: /admin/, vous pouvez autoriser une exception comme Allow: /admin/public-page/ pour cette URL spécifique. Sans la directive Allow, il faudrait soit tout autoriser, soit tout bloquer.
Googlebot et Bingbot supportent la directive Allow, qui n'est pourtant pas dans la norme historique du protocole robots.txt (REP). C'est une extension utilisée par les principaux moteurs. Les robots moins courants ou ceux qui suivent strictement la norme originale peuvent l'ignorer. Pour les sites grand public, vous pouvez compter dessus pour Google et Bing, qui représentent l'essentiel du trafic SEO.
Pour Googlebot, c'est la règle la plus spécifique qui gagne, indépendamment de l'ordre des lignes. Si Disallow: /folder/ et Allow: /folder/page.html sont présentes, la deuxième est plus précise, donc /folder/page.html sera explorée. Si deux règles sont également spécifiques mais contradictoires (par exemple Allow: /folder/ et Disallow: /folder/), Allow l'emporte. Les caractères wildcard (*) et le $ pour la fin d'URL ajoutent de la finesse à cette logique.
Non, ce sont deux mécanismes différents. Allow/Disallow contrôlent l'exploration (le robot accède ou non à l'URL), pas l'indexation. Une page peut être exploitée par Googlebot et bloquée de l'index par une balise noindex. À l'inverse, une page bloquée par robots.txt peut quand même apparaître dans les résultats si des liens externes pointent vers elle. Pour empêcher l'indexation, utilisez la balise noindex sans bloquer dans robots.txt.