
Dresser la liste de toutes les pages d’un site web semble être une opération simple. En pratique, aucune méthode unique ne suffit à garantir une couverture complète. Entre les pages exclues du maillage interne, les contenus générés par JavaScript et les URL ignorées par les moteurs de recherche, l’inventaire exhaustif reste un objectif difficile à atteindre sans croiser plusieurs sources de données.
Pages orphelines et rendu JavaScript : les angles morts d’un inventaire de site
La plupart des guides sur le sujet recommandent de consulter le sitemap XML ou de lancer un crawl de liens internes. Ces deux approches couvrent une large part des URL, mais elles partagent un défaut : elles ne trouvent que ce qui est relié ou déclaré.
A lire aussi : Découvrez comment choisir la voiture idéale parmi les modèles disponibles en 2024
Les pages orphelines (celles qui existent sur le serveur sans être liées depuis aucune autre page) échappent à tout crawl basé sur la navigation. Elles peuvent représenter d’anciens contenus, des pages de tests ou des landing pages oubliées après une campagne.
L’autre angle mort concerne les sites modernes qui chargent leur contenu via JavaScript. Un crawler classique envoie une requête HTTP et lit le HTML brut renvoyé par le serveur. Si les liens ou les pages ne s’affichent qu’après exécution du script côté navigateur, le crawl simple ne les détecte pas du tout. Les recommandations récentes insistent sur la nécessité d’ajouter une étape de rendu navigateur au processus de crawl pour capturer ces URL invisibles.
A voir aussi : Découvrez toutes les tendances et analyses essentielles du monde des affaires
Un répertoire comme celui qui recense toutes les pages du site Voiloo illustre une approche où le sitemap est exposé publiquement et mis à jour de façon centralisée, ce qui réduit le risque de pages manquantes pour les visiteurs.
Sitemap XML et indexation Google : pourquoi la liste officielle reste incomplète

Le fichier sitemap.xml est souvent présenté comme la source de référence pour connaître toutes les URL d’un site. Son rôle est de signaler aux moteurs de recherche les pages que le propriétaire souhaite voir indexées. Il ne reflète pas la totalité de ce qui est en ligne.
Plusieurs situations créent un décalage entre le sitemap et la réalité :
- Des pages peuvent être présentes sur le serveur mais absentes du sitemap, soit par oubli de mise à jour, soit par choix volontaire (pages en noindex, ressources internes).
- Google peut décider de ne pas indexer certaines URL déclarées dans le sitemap s’il les juge dupliquées, de faible valeur ou techniquement problématiques.
- Des URL générées dynamiquement (filtres de recherche, paramètres de tri, versions paginées) peuvent exister sans jamais apparaître dans le sitemap ni dans les résultats de recherche.
Le sitemap reste un point de départ utile, mais il ne constitue pas une preuve d’exhaustivité. Il indique ce que le webmaster déclare, pas ce que le site contient réellement.
L’opérateur site: dans Google et ses limites
Taper « site:mondomaine.fr » dans Google affiche les pages indexées. Cette méthode donne un aperçu rapide, mais le nombre affiché fluctue d’une requête à l’autre et ne correspond pas au total réel des pages indexées. Google ne garantit pas l’affichage de la totalité de son index pour un domaine donné.
Les pages récemment publiées peuvent mettre plusieurs jours à apparaître. Les pages désindexées ou filtrées par l’algorithme n’apparaissent plus, même si elles sont toujours accessibles par leur URL directe. L’opérateur site: mesure la visibilité dans Google, pas l’existence des pages.
Construire une liste exhaustive de pages : l’approche en couches
La méthode la plus fiable pour dresser un inventaire complet repose sur le croisement de plusieurs sources, chacune compensant les lacunes des autres. Cette logique de couches successives est la seule qui permette de s’approcher d’un résultat exhaustif.
La première couche consiste à récupérer le fichier robots.txt et les sitemaps déclarés. Le robots.txt peut révéler des répertoires entiers que le propriétaire du site souhaite masquer aux robots, mais qui existent bel et bien.
La deuxième couche est le crawl de liens internes. Un outil parcourt chaque page accessible depuis la page d’accueil en suivant tous les liens. Cette étape identifie la structure de navigation réelle du site et toutes les pages reliées entre elles.
La troisième couche ajoute le rendu JavaScript. Au lieu de lire seulement le HTML statique, le crawler exécute le code JavaScript de chaque page pour découvrir les liens et contenus chargés dynamiquement. Cette étape est devenue indispensable sur les sites construits avec des frameworks comme React, Vue ou Angular.

La quatrième couche cible les pages orphelines. Pour les trouver, il faut comparer la liste obtenue par crawl avec d’autres sources : logs du serveur, Google Search Console, anciennes versions du site via la Wayback Machine, ou exports depuis le CMS.
Déduplication et stabilité de la liste
Sur les sites de grande taille, le crawl génère souvent des milliers d’URL qui pointent vers le même contenu avec des paramètres différents. Les retours d’expérience insistent sur la nécessité de dédupliquer les URL et de limiter le rythme de crawl pour obtenir une liste stable et exploitable.
Sans déduplication, une même fiche produit peut apparaître sous des dizaines de variantes (tri par prix, par avis, par couleur). La liste finale gonfle artificiellement et perd toute utilité pour un audit ou une migration.
Cas des sites vitrines et des petits sites : un inventaire plus simple mais pas sans pièges
Sur un site vitrine de quelques dizaines de pages, le problème semble moins aigu. Le sitemap couvre généralement la totalité du contenu, et un crawl rapide suffit à tout parcourir. Les pièges existent malgré tout.
Les pages créées par des extensions (formulaires de contact, pages de remerciement, pages de politique de confidentialité générées automatiquement) sont fréquemment oubliées dans les inventaires manuels. Les redirections cassées ou les anciennes URL encore accessibles peuvent aussi fausser le décompte.
Un propriétaire de site vitrine qui souhaite vérifier son inventaire gagne du temps en croisant le sitemap avec un crawl, même basique. La comparaison entre les deux listes met en évidence les écarts en quelques minutes.
Aucune méthode ne garantit à elle seule une liste parfaite. Le croisement de sources reste la seule approche qui résiste aux angles morts techniques, quelle que soit la taille du site.