robots.txt et sitemap.xml ont des rôles différents
| Mécanisme | Objectif | Portée | Effet principal |
|---|---|---|---|
| robots.txt | Contrôler le crawl | Chemins pour robots | Ne garantit pas la désindexation |
| sitemap.xml | Signaler les URL importantes | URL et métadonnées | Indication, pas garantie d'indexation |
| noindex | Exclure de l'index | URL ou ressource | Fonctionne après lecture par le robot |
| rel="canonical" | Indiquer la version préférée | URL ou ressource | Signal fort, pas directive absolue |
robots.txt fait partie du Robots Exclusion Protocol et contrôle l'accès des robots aux chemins d'URL. RFC 9309 précise qu'il ne s'agit pas d'un mécanisme d'autorisation. [4]
Une sitemap indique aux moteurs les pages, vidéos et autres fichiers importants, ainsi que leurs relations et métadonnées. [6]
Emplacement et portée de robots.txt
Le fichier doit s'appeler `robots.txt` et se trouver à la racine de l'hôte, par exemple `https://example.com/robots.txt`. [2][4]
Sa portée dépend du protocole, de l'hôte et du port. Google limite le fichier à 500 KiB. [2][3]
Syntaxe de base
User-agent: *
Disallow: /admin/
Allow: /admin/public/
Sitemap: https://example.com/sitemap.xml
Google prend en charge `user-agent`, `allow`, `disallow` et `sitemap`. `crawl-delay` n'est pas pris en charge. [3]
Le champ `sitemap` doit contenir une URL absolue et plusieurs lignes `Sitemap` sont possibles. [2][3]
Priorité des règles, casse et wildcards
Google utilise la règle correspondante la plus spécifique. En cas d'égalité entre `allow` et `disallow`, Google choisit la règle la moins restrictive, donc `allow`. [3][4]
Les chemins sont sensibles à la casse. Google prend en charge `*` comme wildcard et `$` comme fin d'URL. [3]
robots.txt ne remplace pas noindex
Une URL bloquée par robots.txt peut encore apparaître dans Google si elle est découverte via d'autres liens. [1][3]
Pour exclure une page de l'index, utilisez `noindex` dans robots meta ou `X-Robots-Tag`. Google doit pouvoir crawler la page pour lire cette règle. [5][16]
Erreurs HTTP et cache de robots.txt
| Statut | Comportement Google |
|---|---|
| 2xx | Traite le fichier robots.txt |
| 3xx | Suit au moins 5 redirections |
| 4xx except 429 | Considère qu'il n'existe pas de restrictions |
| 5xx / network | Peut suspendre le crawl et utiliser la dernière version valide |
Google traite les réponses `2xx`, suit au moins cinq redirections pour `3xx` et considère la plupart des `4xx` sauf `429` comme l'absence de restrictions. [3]
Avec `5xx` ou des erreurs réseau, Google peut suspendre temporairement le crawl et réutiliser la dernière version valide. Le cache dure généralement jusqu'à 24 heures. [3]
À quoi sert sitemap.xml
Une sitemap facilite la découverte des URL importantes et peut inclure date de modification, variantes linguistiques, images, vidéos et actualités. [6][7]
Google indique qu'un petit site d'environ 500 pages ou moins, bien lié en interne, peut ne pas avoir besoin de sitemap. [6]
Formats de sitemap pris en charge
Google prend en charge XML, RSS, mRSS, Atom 1.0 et les sitemaps texte. XML est le plus polyvalent. [7]
Google ne déclare pas de préférence entre les formats pris en charge. [7]
Limites de sitemap et d'index de sitemaps
| Fichier | Entrées maximales | Taille maximale | Note |
|---|---|---|---|
| Sitemap unique | 50,000 | 50 MB | Limite non compressée; gzip autorisé |
| Index de sitemaps | 50,000 sitemaps | 50 MB | Limite non compressée; gzip autorisé |
Une sitemap est limitée à 50 000 URL ou 50 MB non compressés. Au-delà, elle doit être divisée. [7][8]
Un index peut contenir jusqu'à 50 000 sitemaps et reste limité à 50 MB. gzip est autorisé. [8]
Quelles URL inclure
Google recommande d'inclure des URL absolues que vous souhaitez voir dans les résultats. [7]
En présence de doublons, la sitemap devrait contenir l'URL canonique préférée. L'inclusion dans la sitemap est un signal canonical plus faible qu'une redirection ou `rel="canonical"`. [7][9]
`<lastmod>`, `<priority>` et `<changefreq>`
Google ignore `<priority>` et `<changefreq>`. [7]
Google peut utiliser `<lastmod>` s'il est constamment exact et correspond à une modification significative du contenu, des données structurées ou des liens. [7]
Soumettre une sitemap à Google
Une sitemap peut être soumise via Search Console, l'API Search Console ou référencée dans robots.txt avec `Sitemap:`. [7][11][12]
La soumission reste une indication et ne garantit ni téléchargement, ni crawl, ni indexation. [7]
Sites multilingues et sitemaps spécialisées
Google accepte les relations `hreflang` dans les sitemaps XML. Chaque version doit référencer toutes les variantes, y compris elle-même. [10]
Des extensions existent pour images, vidéos et actualités. [13][14][15]
Erreurs fréquentes de SEO technique
Bloquer une page dans robots.txt tout en attendant que Google respecte son `noindex` est une erreur majeure. [5][16]
Il faut aussi éviter les signaux contradictoires entre sitemap et `rel="canonical"`. [9]
- Ne pas utiliser robots.txt à la place de `noindex`.
- Ne pas ajouter volontairement redirections, 404 ou doublons inutiles à la sitemap.
- Ne pas modifier `<lastmod>` à chaque déploiement sans changement réel.
- Garder sitemap et canonical cohérents.
- Vérifier séparément sous-domaines et protocoles.
Checklist de déploiement
Vérifiez les vraies réponses HTTP. robots.txt doit être servi comme texte et la sitemap dans un format pris en charge. [2][7]
Après publication, contrôlez le rapport Sitemaps de Search Console. Lors d'une migration, une sitemap peut aider Google à découvrir les nouvelles URL. [11][17]
- `/robots.txt` est-il accessible ?
- Des URL importantes sont-elles bloquées ?
- Les pages noindex restent-elles crawlables ?
- La sitemap contient-elle uniquement des URL absolues préférées ?
- Chaque fichier reste-t-il sous 50 000 URL et 50 MB ?
- Canonical et sitemap sont-ils cohérents ?
- Les relations hreflang sont-elles correctes ?
- Search Console signale-t-il des erreurs ?

