Comment les sites de Discourse public sont indexés par les moteurs de recherche comme Google

:bookmark: Cette référence explique comment les sites Discourse publics fonctionnent avec les moteurs de recherche comme Google et comment la plateforme garantit que le contenu est correctement indexé même en tant qu’application JavaScript.

:person_raising_hand: Niveau d’utilisateur requis : Tous les utilisateurs

Indexation des sites Discourse par les moteurs de recherche

Discourse est construit comme une application JavaScript, mais est spécifiquement conçu pour garantir que les moteurs de recherche peuvent explorer et indexer correctement tout le contenu des sites publics.

Comment Discourse prend en charge les robots d’exploration des moteurs de recherche

Bien que Discourse utilise le JavaScript moderne pour ses fonctionnalités interactives, il met en œuvre plusieurs techniques pour garantir que les moteurs de recherche peuvent indexer correctement tout le contenu :

Mise en page dédiée aux robots d’exploration

Discourse détecte automatiquement les robots des moteurs de recherche par leur agent utilisateur à l’aide du module CrawlerDetection. Lorsqu’un robot d’exploration est détecté, Discourse sert une mise en page HTML entièrement rendue côté serveur (crawler.html.erb) au lieu de l’application JavaScript normale. Cette mise en page pour robots d’exploration comprend :

  1. Contenu de sujet et listes de sujets entièrement rendus en HTML — aucun JavaScript requis
  2. Balisage de données structurées Schema.org (par exemple, DiscussionForumPosting, ItemList, BreadcrumbList) pour aider les moteurs de recherche à comprendre votre contenu
  3. Pagination appropriée avec des liens rel=\"prev\" et rel=\"next\" pour permettre une exploration complète
  4. En-têtes Last-Modified sur les pages de sujet pour signaler la fraîcheur du contenu

Solution de repli sans JavaScript

Pour les navigateurs courants dont le JavaScript est désactivé, Discourse inclut également une balise <noscript> dans la mise en page de l’application standard. Celle-ci contient des listes de sujets et du contenu de sujet rendus, garantissant que le site reste accessible même sans JavaScript.

Robots.txt et contrôles d’indexation

Discourse fournit plusieurs paramètres pour contrôler la manière dont les moteurs de recherche interagissent avec votre site :

allow_index_in_robots_txt

Ce paramètre de site (activé par défaut) contrôle si le robots.txt de votre site autorise l’exploration. Lorsqu’il est désactivé, le robots.txt refusera tous les robots d’exploration et un en-tête X-Robots-Tag: noindex sera ajouté à toutes les réponses.

Liste blanche et liste noire des robots d’exploration

Vous pouvez contrôler quels robots d’exploration sont autorisés à accéder à votre site en utilisant :

  • allowed_crawler_user_agents — lorsqu’il est défini, seuls les robots d’exploration listés sont autorisés ; tous les autres sont bloqués via robots.txt
  • blocked_crawler_user_agents — lorsqu’il est défini, les robots d’exploration listés sont bloqués tandis que tous les autres sont autorisés

Robots.txt personnalisé

Les administrateurs peuvent personnaliser entièrement le fichier robots.txt à l’adresse /admin/customize/robots. Un robots.txt personnalisé remplace entièrement celui généré par défaut.

Chemins exclus par défaut

Par défaut, Discourse bloque les robots d’exploration des chemins qui ne sont pas utiles pour l’indexation, tels que /admin/, /auth/, /email/, /session, /search, et d’autres. Googlebot bénéficie d’une configuration plus permissive, ne bloquant que les chemins d’administration/d’authentification principaux.

Affichage de la version pour robots d’exploration

Vous pouvez voir comment les moteurs de recherche voient votre site Discourse en :

  • Installant un plugin de navigateur désactivant JavaScript dans Chrome ou Firefox
  • Utilisant Chrome DevTools pour désactiver JavaScript (instructions de Google)
  • Modifiant la chaîne d’agent utilisateur de votre navigateur pour un robot d’exploration connu (par exemple, Googlebot) afin de voir la mise en page dédiée aux robots d’exploration
13 « J'aime »