Robots.txt + meta tag
La balise meta robots et le fichiers robots.txt sont deux mécanismes différents et indépendants pour passer certaines informations aux robots des moteurs de recherche. Ils vous permettent de spécifier quelles parties de votre site doivent être indexées par les moteurs de recherche de celles qui ne le doivent ne pas . Ils sont touts les deux très puissants, et il faut être prudent car de petites erreurs peuvent avoir de sérieuses conséquence !
Différence entre robots.txt & la balise meta robots
Robots.txt est utilisé pour bloquer les répertoires système, tel que le répertoire /plugins qui est installé lors de l'installation par défaut de Joomla. Il dit aux bots de Google de ne pas "crawler" le fichier ou le répertoire, ce qui a pour effet de l'obfusquer leurs contenus.
La balise meta robots est elle utilisée spécifiquement pour bloquer l' indexation de certaines pages. Par exemple, Google n' est pas friant de vos pages de recherche internes pour les incorporer dans son index (pour plus d'informations consultez https://www.seroundtable.com/google-block-search-results-pages-24279.html) utilisez la balise meta robots pour bloquer leurs indexations. Donc en résumé robots.txt dit à Google ne va pas là alors que la balise meta robots dit ne m'indexe pas. Ce sont deux choses différentes !
Robots.txt
La configuration du fichier robots.tx se fait en dehors de l'administration de Joomla, vous devez simplement l'ouvrir et l' éditer. Le fichier robots.txt est un fichier qui contient des informations sur les parties du site qui doivent être accessibles ou non au public. Il existe essentiellement pour les bots des moteurs de recherche, qui crawl les sites internet, afin de définir quelles pages doivent être incluses dans leur index. Par défaut, les bots des moteurs de recherche peuvent parcourir l’ensemble de votre site, si vous souhaitez leur bloquer l'accès à certaines partie du site vous devrez le préciser dans ce fichier.
Notez que bloquer un URL via le robots.txt n'empêchera pas Google d' indexer la page. Il s' arrêtera simplement de vérifier cette page. Regardez ce résultat de recherche pour Raven tools SEO , qui est très bien positionné, l' URL est bloquée pas leur robots.txt, alors qu'elle est indexée :
Par conséquent pour être absolument sur qu'une page ne soit pas indexée, utilisez la balise méta robots, tel que détaillé plus bas dans cet article.
Revenons au fichier robots.txt : L'installation de Joomla inclus un fichier standard robots.txt, qui est ok pour la plus part des sites, mis à part pour un problème important : il bloque l'accès des bots des moteurs de recherche aux répertoires /images /média et /templates. Ce qui empêche les images ou votre CSS de votre site de se faire indexés. Il vous faut donc soit commenter ces lignes ou les supprimer.
User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /cli/
Disallow: /components/
# Disallow: /images/ <------ Commentez cette ligne avec un #
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /logs/
# Disallow: /media/ <------ Commentez cette ligne avec un #
Disallow: /modules/
Disallow: /plugins/
# Disallow: /templates/ <------ Commentez cette ligne avec un #
Disallow: /tmp/
Note : Depuis Joomla 3.3, ce problème a été corrigé et ces répertoires ne sont plus bloqués. Mais si votre site est une vieille version de Joomla, la vieille version de robots.txt est probablement en place !
Comme vous pouvez le voir, ce fichier est utilisé pour bloquer les répertoires systèmes de Joomla. Vous pouvez aussi utiliser le fichier robots.txt pour empêcher l'indexation de pages spécifiques, telle que votre page de login ou votre page d'erreur 404, mais vous le ferrer de façon plus efficace si vous utiliser la balise méta robots à cette fin.
Paramétrages avancés avec le fichier robots.txt
Les utilisateurs avancés peuvent utiliser le fichier robots.txt pour bloquer l'indexation de pages en utilisant le pattern matching. Par exemple vous pouvez bloquer l'indexation de toutes les pages contenant un "?" afin de vous prémunir du contenu dupliqué provenant d'URLs non réécrites (ce qui n'est plus conseillé de nos jours) :
User-agent: *
Disallow: /*?*
Soyez prudent avec ce type de paramétrages. Plus d'exemples de ce type sont disponibles sur searchengineland.com.
Allow CSS and Javascript ?
Google a récemment fait une une remarque concernant les sites accessibles sous smartphones (voir la video de Matt Cutts à ce sujet) :
Ne bloquer pas CSS, Javascript & d'autres fichiers ressources par défaut . En effet cela empêcherait les bots de Google de bien comprendre la page et son rendu mais aussi de vérifier que le site est bien optimisé pour une visualisation sous smartphones.
C'est pourquoi le répertoire /templates & /média n'est plus bloqué lors de l'installation de Joomla depuis Juillet 2014 (idem pour le répertoire ). Assurez vous tout de même que tous vos fichiers ressource ne sont pas bloqués.
Assurez vous toutefois que tous vos fichiers ressources ne soient pas bloqués. Si vous utilisez un plugin tel que JCH-optimize, qui combine de multiples fichiers CSS et Javascript en fichiers uniques, vous pourriez avoir besoin de spécifier un Allow comme ceci :
Allow: /plugins/system/jch_optimize/assets2/
Allow: /plugins/system/jch_optimize/assets/
Précisez l'emplacement de votre sitemap
Le fichier robots.txt peut être aussi utilisé pour préciser l'emplacement de votre fichier sitemap xml, c'est à faire si celui-ci n'est pas situé à la racine de votre site, ce qui est communément le cas si votre sitemap est générée par une extension Joomla comme PWT Sitemap, Osmap, Jsitemap etc. Pour ce faire regarder dans les paramétrages de votre extension pour trouver l'emplacement de votre sitemap, puis ajouter le à la fin du fichier robots.txt, comme ceci :
Sitemap: index.php?option=com_osmap&view=xml&tmpl=component&id=1
Les mises à jour de Joomla et modification du fichier robots.txt
De temps en temps le projet Joomla met à jour le fichier robots.txt, par exemple en débloquant certains répertoires. Lorsque cela se produit ils ne fournissent pas simplement un nouveau fichier robots.txt, en effet cela aurait pour effet de d'effacer toute customisation que vous auriez pu lui apporter, ils fournissent par conséquent un fichier nommé robots.txt.dist. Si vous n'avez fait aucune customisation vous pouvez tout simplement supprimer votre fichier robots.txt existant et renommer le fichier robots.txt.dist en robots.txt.
Si vous customisé votre robots.txt, vérifiez les changements inclus dans le robots.txt.dist et copier ces modifications dans celui customisé. En général, après une mise à jour Joomla vous serez notifié dans un message de post installation qu'une modification est disponible. Notez que la même procédure est applicable pour le fichier .htaccess .
Balise meta robots
La balise meta robots, est une meilleur solution pour bloquer l'indexation de contenu, mais vous ne pouvez le faire que pour des URLs et non pas pour des répertoires systèmes. Cette une méthode très efficace pour garder du contenu hors de l'index Google. Avec Joomla vous avez la possibilité de paramétrer cette balise à différents endroits en même temps que vous saisissez d'autres paramétrages SEO comme les méta description. Sur un niveau global pour votre site, laissez le paramétrage par défaut de page Configuration Globale dans la rubrique Métadonnées. Comme vous pouvez le voire, vous avez 4 combinaisons de paramétrage possibles :
A moins que vous ne souhaitiez cacher votre site aux moteurs de recherche (ce qui peut être utile en phase de développement), gardez la valeur par défaut Index, Follow. Pour des pages spécifiques vous pouvez faire un choix différent, soit au niveau de l'article ou de son élément de menu ce qui prendra le pas sur celui de la configuration générale du site. Par exemple les pages de résultat de recherche ne devrait pas être indexée, mais si vous souhaitez que ses liens soient suivis par les bots des moteurs de recherche : choisissez la balise No Index, follow. Vous trouverez plus d'infos sur ce sujet dans cet excellent E-book du même auteur.
Quand vous paramétrez cette balise dans Joomla, vous générez en fait le code HTML ci-dessous, en consultant le code source de votre page vous pourrez vérifier si votre paramétrage est correcte.
<meta name="robots" content="NOINDEX, NOFOLLOW">
Avertissement : Si vous utilisez Noindex, Nofollow pour cacher votre site en cours de développement, n'oubliez pas de le modifier lorsque vous le mettrez en ligne (cela m'est arrivé) autrement votre score SEO risque fort d'être plus que mauvais... Pour plus d'informations à ce sujet lisez cet article de Moze.com.
Paramétrages des Snippets
En 2019, Google a introduit un paramétrage avancé pour le meta robots tag dans le but de configurer comment vos snippets doivent être rendus. Il y a plusieurs combinations possibles, mais pour la plus part des sites, les paramétrages de les combinations suivantes sont conseillés pour une visibilité optimum dans les résultats de recherche :
<meta name="robots" content="max-snippet:-1, max-image-preview:large, max-video-preview:-1" class="4SEO_robots_tag">
Pour en savoir plus, vous pouvez consulter cette article searchengineland.com/google-adds-new-snippet-controls-to-enable-control-over-how-your-search-listings-are-displayed-322456.
Pour les mettre en place vous aurez besoin d' une extension ad' oc. Certaines extensions SEO le font telle que 4SEO.
Cet article est une traduction libre du tutoriel de Simon Kloostra : : Robots.txt + meta tag.