Depuis, à deux reprises, j'ai reçu des messages d'alerte d'OVH au sujet de dépassements du nombre de requêtes sur ma base de données.
Renseignement pris, c'est hélas de plus en plus courant et c'est dû aux crawlers des IA (celle de Meta lors de l'incident précédent, je ne sais pas encore avec certitude laquelle pour l'incident en cours).
Cette solution interdit aux robots de prendre connaissance de l'énorme quantité de liens possibles sur un wiki en leur retournant un HTTP 403 Forbidden quand ils essayent d'accéder à l'immense liste de tous les liens techniques possibles (typiquement les liens vers les diffs entre toutes les anciennes versions de toutes les pages, ce qui augmente de manière exponentielle à chaque modification d'une page).
Mais que chaque demande du crawler sur sa liste de pages précédemment enregistrées génère quand même un appel à la base de données, même si c'est pour lui renvoyer un 403.
Mes questions sont les suivantes:
Est-ce que je peux laisser les choses comme ça, car après tout ça ne gêne pas mes utilisateurs plus que ça et que quand ça déborde, OVH refuse de traiter les requêtes "a la c*n" des crawlers?
Ou est-ce que je risque au contraire de me faire voler dans les plumes par OVH?
Est-ce que les crawlers voyous vont finir par se lasser à force de récupérer des erreurs 403? Je n'y crois pas trop mais???
Est-ce que vous me conseillez de bloquer les robots via un htaccess? Sauf que les crawlers IA ne les respectent pas toujours, que certains de mes "attaquants" changent d'IP en permanence et que je perdrais mes référencements.
Je ne me vois pas monter en gamme ni mettre en place plus de cache uniquement pour satisfaire des requêtes de robots voyous.
Bref tout conseil ou idée serait bienvenu. Merci d'avance.
Et c'est bien le robot meta-externalagent/1.1 qui essaye d'explorer les moindres recoins de mon wiki pour nourrir son IA (ils le disent dans leur doc) et pas du tout pour le référencement.
Je vais essayer d'interdire meta-externalagent/1.1 via un htaccess. On verra bien s'il respecte la directive.
Well, two months later, the Crawler Protection extension has indeed improved things, but it still wasn't enough.
And blocking AI crawlers with .htaccess didn't help either, since many of those bots use fake identifiers and change IP on each request!
For a week now, I've moved to Cloudflare, using the free tier. The basic settings have already improved things, but it still wasn't enough.
For the past two days, I've added the following rule to my "security rules":
(http.request.uri.query contains "Sp%C3%A9cial") -> Non-Interactive Challenge
Since the overwhelming majority of abusive requests were targeting the wiki's "special pages".
Since then, everything seems to be back in order: Cloudflare, with this particular rule plus its generic anti-bot rule, blocks about 90% of unwanted requests, without blocking search engine bots.
It would be nice to be able to specify the price for AI bots to crawl in a header: the AI bot sends the amount to a crypto wallet, and in exchange it gets the right to crawl.
Very sincerely, I wish OVH would provide solutions that are just as comprehensive (at least in part) so I could do without them. But they are simply indispensable in many situations, especially when you don’t want to set up a massive, over‑engineered system because the client’s budget is "not much".