Comment fonctionne cette vérification
Scanaris fait trois choses. D'abord, il demande /robots.txt et ne le considère valide que s'il répond 200 et n'est pas du HTML (les applications monopages renvoient leur page pour n'importe quel chemin) ; sinon, il ouvre un constat de sévérité faible. Ensuite, il demande /sitemap.xml et le considère valide s'il répond 200 et contient une balise <urlset> ou <sitemapindex> ; s'il ne le trouve pas là mais que le robots.txt a une ligne Sitemap:, il l'accepte aussi ; sinon, constat de sévérité faible. Enfin, il regarde si la page analysée porte un noindex, dans la balise <meta name="robots"> ou dans l'en-tête HTTP X-Robots-Tag ; si oui, il ouvre un constat de sévérité moyenne, parce que cette page n'apparaîtra pas sur Google.
Pourquoi c'est important
Le robots.txt est la première URL que visite n'importe quel robot et l'endroit où tu lui dis ce qu'il peut parcourir et où se trouve ton sitemap. Le sitemap est la liste des URL que tu veux voir indexées par Google, avec leur date de modification : sans lui, Google découvre tes pages en suivant les liens, ce qui est plus lent et laisse de côté celles qui sont peu liées. Les deux sont de sévérité faible parce que leur absence n'empêche pas l'indexation, elle la dégrade seulement. Le noindex, c'est autre chose : c'est un ordre direct à Google de ne pas afficher cette page, et sur l'accueil ça signifie que ton site n'existe pas dans le moteur. C'est l'erreur SEO la plus dévastatrice et la plus silencieuse qui soit, et c'est presque toujours un reste de l'environnement de test.
Comment corriger
robots.txt
User-agent: *
Allow: /
Sitemap: https://tondomaine.com/sitemap.xml
Un fichier texte brut à la racine. Nuxt et Next.js ont des modules et des conventions (app/robots.ts) qui le génèrent ; sur un site statique, il va dans le dossier public. N'y liste pas de routes privées : il est public et tu les désignerais à n'importe qui, comme l'explique chemins sensibles dans robots.
Sitemap
- Nuxt : le module sitemap le génère à partir des routes et des URL que tu lui passes (articles, produits).
- Next.js : un fichier
app/sitemap.tsqui renvoie la liste des URL. - WordPress : il le génère seul depuis la version 5.5 sur
/wp-sitemap.xml; ajoute cette ligne au robots ou laisse Yoast ou Rank Math le placer sur/sitemap_index.xml. - Astro, Hugo, Jekyll : un plugin ou une intégration officielle.
Uniquement des URL indexables, canoniques et qui répondent 200. Soumets-le dans Google Search Console et Bing Webmaster Tools : tu sauras ainsi combien de ces URL sont réellement indexées.
noindex sur la page
Cherche d'où il vient. Dans Nuxt, le module robots peut poser un noindex selon une variable d'environnement parfois copiée de l'environnement de test vers la production. Dans Next.js, metadata.robots. Dans WordPress, le réglage « Demander aux moteurs de recherche de ne pas indexer ce site » dans Réglages de lecture, que quelqu'un a activé pendant que le site était en construction. Sur Vercel, les déploiements de prévisualisation portent X-Robots-Tag: noindex automatiquement, mais pas celui de production ; si tu le vois en production, tu l'as ajouté toi-même dans la configuration des en-têtes.
Vérifie que c'est corrigé
curl -s https://tondomaine.com/robots.txt
curl -s https://tondomaine.com/sitemap.xml | head -5
curl -sI https://tondomaine.com | grep -i x-robots-tag
curl -s https://tondomaine.com | grep -oiE '<meta name="robots"[^>]*>'
Les deux premières doivent montrer du texte et du XML, pas du HTML. Les deux dernières ne doivent pas contenir noindex (une meta robots avec index, follow ou max-image-preview est normale).
Questions fréquentes
Mon sitemap est sur un autre chemin, comme /sitemap_index.xml.
N'importe quel chemin convient tant que le robots.txt le référence avec la ligne Sitemap:. La vérification regarde là avant de remonter le constat.
Je ne veux pas que mon site soit sur Google pour l'instant.
Alors le noindex est correct et tu peux accepter le constat. Mais mets-toi un rappel : la plupart des sites avec un noindex en production ne l'ont pas fait exprès.
Le robots.txt concerne-t-il les robots d'IA ?
Oui, c'est le même fichier où l'on autorise ou bloque GPTBot, ClaudeBot ou PerplexityBot. Ce que tu autorises et ce qui est judicieux est traité par robots d'IA.