Pour un site avec des centaines de milliers, voir des millions d'URL disponibles au crawl, et susceptibles d'être visitées par les robots des moteurs de recherche (GoogleBots, Bing,...), il est souvent impératif de mieux assimiler la notion du budget de crawl. Ce dernier permet notamment une meilleure gestion de son site en guidant les robots des moteurs de recherche lors de l'exploration des différentes pages.
En gardant en tête que le point d'accès à une page par rapport à la page d'accueil peut avoir un impact sur son importance (et par conséquent le ranking ?!), on essaie toujours de faire en sorte que les pages importantes d'un site soient accessibles en 1, 2, 3 ou maximum 4 clics à partir de la page principale.
Les moyens de communication avec les bots des moteurs de recherche lorsqu'il s'agit du crawl sont les commandes Disallow (Allow), Noindex, Nofollow, etc... Ces directives sont souvent utilisées soit dans le Meta Tag (dans la section Header du HTML d'une page) ou dans le fichier robots.txt. Voici ce qu'elles signifient :
-
Disallow indique aux robots les pages ou les répertoires à ne pas explorer.
-
Noindex indique aux moteurs de recherche les pages à ne pas indexer dans les résultats de recherche.
-
Nofollow demandent aux bots de ne pas suivre les liens présents sur la page (ne pas leur accorder de crédit).
Le Disallow est principalement utilisé dans le fichier robots.txt à la racine d'un site. Le Noindex et le Nofollow sont utilisés dans la balise Meta Tag du code HTML ou la directive X-robots-tag du protocole HTTP.
En fonction de votre objectif, l'utilisation de ces directives a un certain impact sur le crawl de votre site. En clair, une directive peut s'avérer un allié indispensable (lorsqu'elle est bien utilisée) ou un monstre qui détruira la visibilité de votre site.
Directive dans le meta tag
Dans la section Head de votre site, vous pouvez avoir ces combinaisons :
<meta name=”robots” content=”noindex, follow”>
<meta name=”robots” content=”nofollow”>
<meta name=”robots” content=”noindex, nofollow”>
Il est important de savoir que ces directives peuvent être vues et lues par les bots des moteurs de recherche seulement si la page n'est pas bloquée (avec la commande Disallow dans le fichier robots.txt).
Il faudrait donc éviter d'envoyer des messages contradictoires aux moteurs de recherche en leur donnant des directives à suivre sur des pages que vous avez déjà décidé de bloquer et celles qui sont interdites d'accès.
Pour approfondir vos connaissances sur ce sujet, vous pouvez lire ce résumé de référence fourni par Google.
Directive dans le fichier robots.txt
Il faudrait tout d'abord comprendre une chose : n'utilisez le fichier robots.txt que si vous comprenez ce que vous faites. Ce fichier est tellement important et puissant qu'une mauvaise manipulation peut avoir des conséquences désastreuses pour votre site et donc votre business.
C'est pourquoi, pour des sites ayant très peu de pages (des dizaines de milliers ou moins), et qui ont une bonne moyenne d'URL explorées par jour, il est pratiquement inutile de chercher à manipuler ce fichier, ou le paramètre d'URL (dans la Search Console) ou même de s'inquiéter de leur budget de crawl. En revanche, la gestion de ce fichier a une importance capitale pour des sites ayant des millions d'URL à indexer.
Disallow : comment ça marche ?
Avec cette directive, vous pouvez interdire l'exploration d'une partie de votre site (ou d'un répertoire), ou encore des URL avec certains paramètres. C'est souvent capital lorsque l'on a un site e-commerce, avec des filtres qui doivent être bien gérés. Le résultat est simple : le robot ne visitera pas les pages de ce répertoire.
Imaginez que j'aie des dizaines de répertoires ou des filtres qui sont importants pour l'utilisateur, mais qui ne représentent aucun intérêt en termes d'indexation. Ainsi, je peux économiser des dizaines, voir des centaines de milliers des pages dans le budget de crawl alloué à mon site.
Avant d'utiliser cette directive, il faudrait noter qu'elle empêche le passage de tout jus (PageRank). Ce qui rend toute page appartenant à cette catégorie inutile pour le link building.
Pour cela, il suffit simplement d'ajouter la directive Disallow : /votre-page-inutile.
Toutefois, vous pouvez être confronté à un problème : avant la mise en place de cette directive, des centaines d'URL auraient pu être indexées par les moteurs de recherche. Si c'est le cas, ces pages resteront dans l'index de Google et ce dernier essayera de les crawler, mais comme il n’aura plus l'autorisation de le faire, les résultats seront affichés de cette façon :
Resultat de recherche sans description
Si les pages dont vous voulez interdire l'exploration par les bots ont des backlinks ou des balises canonical, les moteurs de recherche peuvent continuer à les indexer.
Pourquoi ne pas combiner le Disallow et le Noindex ?
Même si officiellement la directive Noindex n'existe pas, certains experts et certains outils de crawl, notamment DeepCrawl, recommandent à l'utiliser. Pour aller plus loin, vous pouvez lire cet article d'Olivier Andrieu sur le sujet : Plaidoyer pour une nouvelle directive Noindex: dans le robots.txt.
Vous pouvez expérimenter et utiliser le Noindex pour interdire l'indexation des pages par les moteurs de recherche. Cependant, sur une page HTML, la combinaison des directives Disallow et Noindex n'est pas possible, car l'information contenue dans la page interdite pour l'exploration ne peut pas être découverte ou lue.
Disallow + Noindex dans le fichier robots.txt tend à répondre à la problématique suivante : empêcher le crawl des pages et les désindexer si elles sont présentes dans l'index des moteurs de recherche :
-
Disallow: /example-page-1/
-
Disallow: /example-page-2/
-
Noindex: /example-page-1/
-
Noindex: /example-page-2/
À chaque fois que les robots découvrent une nouvelle page avec la directive Disallow, cette dernière n'est pas explorée. Si le crawl de Google s'effectue à partir des URL déjà crawlées et indexées, lorsque les moteurs de recherche redécouvrent cette page, ils doivent la désindexer. Par conséquence, cette page n'existera plus dans l'index des moteurs de recherche, et donc, aucune exploration ne sera possible dans l'avenir.
Un suivi dans la nouvelle Search Console peut illustrer ce phénomène :
Search console - Pages indexées malgré le blocage
Sur la capture d'écran ci-dessus, la tendance des URL "indexées malgré le blocage par le fichier robots.txt" est en baisse. Ces URL s'intègrent petit à petit dans la catégorie des URL exclues.
Par contre, sur une page où la combinaison des 2 directives n'a pas été mise en place, on ne constate pas cette tendance.
Search Console - Utilisation du Disallow seulement
Pour avoir un meilleur aperçu sur l'index Google, vous pouvez utiliser la commande site:example.com (afin de voir les URL indexées) et le filtre sur les derniers jours (ou semaines). Si la directive Disallow a été utilisée sans Noindex, on remarque souvent la présence des pages "sans description" (comme dans l'exemple ci-dessus). Par contre, si la combinaison Disallow + Noindex a été mise en place dans le fichier robots.txt, le nombre des "pages sans description" tend à réduire et parfois disparaître.
Si vous décidez un jour de l'implémenter, n'oubliez pas d'indiquer la mise à jour du fichier robots.txt dans la Search Console.
J'ai remarqué que cela accélère le processus en poussant Google à vérifier les corrections apportées.