Contrôler les robots d'exploration pour un site

:bookmark: Ce guide explique comment gérer les robots d’exploration sur votre site Discourse.

:person_raising_hand: Niveau d’utilisateur requis : Administrateur

Les robots d’exploration peuvent avoir un impact significatif sur les performances de votre site en augmentant le nombre de pages vues et la charge du serveur.
Lorsque vous constatez une augmentation du nombre de pages vues sur votre site, il est important de vérifier la part des robots d’exploration dans ces statistiques.


Vérifier l’activité des robots d’exploration

Pour savoir si les robots d’exploration affectent votre site, accédez au rapport Vues de page consolidées (/admin/reports/consolidated_page_views) depuis votre tableau de bord d’administration. Ce rapport détaille le nombre de pages vues par les utilisateurs connectés, les utilisateurs anonymes et les robots d’exploration.

Un site où les robots d’exploration fonctionnent normalement :

Un site où les robots d’exploration sont hors de contrôle :

Identifier les robots d’exploration spécifiques

Accédez au rapport User Agent des robots d’exploration web (/admin/reports/web_crawlers) pour trouver une liste des noms de robots d’exploration triés par nombre de pages vues.
Lorsqu’un robot d’exploration problématique accède au site, le nombre de ses pages vues sera beaucoup plus élevé que celui des autres robots d’exploration. Notez qu’un certain nombre de robots d’exploration malveillants peuvent être actifs en même temps.

Bloquer et limiter les robots d’exploration

Il est conseillé de ne pas bloquer les robots d’exploration des principaux moteurs de recherche, tels que Google, Bing, Baidu (chinois), Yandex (russe), Naver (coréen), DuckDuckGo, Yahoo et autres, en fonction de votre pays.
Lorsqu’un robot d’exploration est hors de contrôle, il y a de fortes chances que le même robot ait accédé à d’autres sites et que quelqu’un d’autre ait déjà demandé des informations ou créé des rapports à son sujet, ce qui sera utile pour déterminer s’il faut limiter ou bloquer ce robot d’exploration particulier.
Notez que certains robots d’exploration peuvent générer un grand nombre de pages vues si vous utilisez des services tiers pour surveiller ou ajouter des fonctionnalités à votre site via des scripts, etc.
Pour obtenir un enregistrement des robots d’exploration peu fiables, vous pouvez consulter cette liste : https://github.com/mitchellkrogza/apache-ultimate-bad-bot-blocker/blob/master/robots.txt/robots.txt

Ajuster les paramètres des robots d’exploration

Sous Admin > Paramètres, vous trouverez quelques paramètres qui peuvent aider à limiter le débit de certains robots d’exploration :

  • Ralentir les robots d’exploration en utilisant :

    • slow down crawler user agents
    • slow down crawler rate
  • Bloquer les robots d’exploration avec :

    • blocked crawler user agents

Assurez-vous de connaître le nom exact de l’agent utilisateur pour les robots d’exploration que vous souhaitez contrôler. Si vous ajustez l’un des paramètres ci-dessus et que vous ne constatez pas de réduction du nombre de pages vues de cet agent, vous voudrez peut-être vérifier que vous utilisez le bon nom.
En cas de doute sur la marche à suivre, commencez toujours par l’option “ralentir” plutôt que par un blocage complet. Vérifiez au fil du temps s’il y a des améliorations. Vous pouvez procéder à un blocage complet si vous ne constatez pas de résultats appréciables.

17 « J'aime »

Devrait-il y avoir une sorte d’avertissement indiquant que cela ne fonctionne qu’avec ceux qui se comportent bien ? Et même Google contournera tout cela lorsqu’il proviendra de liens de Gmail.

Les deux sont appliqués sur le serveur.

Cependant, si un mauvais bot se fait passer pour Chrome ou quelqu’un d’autre en usurpant les en-têtes, nous ne pouvons pas utiliser les en-têtes pour le détecter…

2 « J'aime »

Fait killer : les cartes d’aperçu comptent comme une vue de page !

Le serveur que j’administre semble avoir été submergé de requêtes de cartes d’aperçu du type http.rb/5.1.0 (Mastodon/4.0.2; + [https://mstdn.science/](https://mstdn.science/))

Je ne pense qu’une action puisse être entreprise à part dire aux utilisateurs de Mastodon d’inclure une image afin que la carte d’aperçu ne soit pas ajoutée automatiquement.

1 « J'aime »

Je reçois déjà plus de 1500 visites par jour de la part des robots d’exploration. :tired_face: Puis-je tous les bloquer en utilisant Cloudflare DNS ? Ou quelle option est nécessaire pour les bloquer tous de force ? (Instance privée)

Je n’en veux tout simplement pas.

Utiliser Nginx comme proxy inverse et bloquer les user agents indésirables. Cela aide beaucoup. Bloquer les pays dont vous n’avez pas besoin aide aussi énormément.

Je ne peux pas bloquer les États-Unis, la France et l’Allemagne (grands pays hébergeant des VPS), mais pour moi, la Russie, le Vietnam, l’Iran, l’Irak, etc. ont beaucoup aidé.

Mais Discourse est assez… est-ce que “résilient” est le bon mot. La situation est très différente de celle de WordPress où ces robots SEO inutiles, ces “knockers”, ces script kiddies et ces acteurs malveillants peuvent facilement mettre un serveur à genoux.

2 « J'aime »

J’héberge chez Hetzner Allemagne, avec seulement deux ports ouverts dans mon pare-feu (80/443). Et Discourse fonctionne derrière le gestionnaire de proxy NGINX (certes, il existe de meilleures solutions, mais je suis trop paresseux pour coder et j’aime les interfaces web).

Maintenant, je vais opter pour la liste blanche, avec une chaîne aléatoire comme seule entrée autorisée… à partir de maintenant, plus de vues de page :smiley:

Une question sur ce qu’il faut mettre exactement dans « ralentir les agents utilisateurs des robots d’exploration ».
Pour nous, Facebook est un coupable majeur, Bing étant un troisième proche.
Le rapport montre les agents suivants comme principaux robots d’exploration qui consomment des vues de page :

Que faut-il mettre exactement dans « ralentir les agents utilisateurs des robots d’exploration » - ces URL exactes incluant « https » ou « http » ? Ou tout ce qui suit les doubles barres obliques ? Ou autre chose ? Ou devons-nous procéder par essais et erreurs ?

Merci !

Pour simplifier, vous devriez utiliser les noms de ces robots. Mais vous pouvez utiliser n’importe quelle partie de la chaîne de l’agent utilisateur, mais assurez-vous que cela n’affecte pas plus que ce que vous souhaitez.

Ralentir les robots est une méthode très peu fiable, mais certains suivent cette règle. Mais ceux-ci proviennent de vos partages, etc. et ne créent pas autant de charge de travail. WordPress serait une autre histoire.

Mais cela fait partie de ma liste de robots bloqués. Vous comprenez l’idée.

1 « J'aime »

Merci pour cela, @Jagster - très utile. J’ai parfois l’impression de jouer au jeu du « whac-a-mole », mais je comprends l’idée d’utiliser une partie de la chaîne du nom du crawler plutôt que la totalité.\n\nUn travail en cours pour moi en tant qu’administrateur du site, je suppose - en avant !

1 « J'aime »

Il peut y avoir plusieurs raisons, mais Googlebot a son budget, et lorsque les sitemaps sont le moyen le plus important de trouver des liens, il n’atteint jamais les liens internes lorsque le budget quotidien/hebdomadaire/mensuel est utilisé.

Et dans un forum, les liens internes sont importants pour les utilisateurs, pas pour Google.

Mais je ne sais pas si Googlebot voit les liens internes. Il devrait, cependant.

1 « J'aime »