AI Crawler Manager — Documentation
Guide complet du module dfaicrawlermanager : installation, robots.txt visual builder, blocage HTTP 403, import des logs Apache/Nginx et stratégies de blocage des bots IA.
Présentation
AI Crawler Manager (slug technique : dfaicrawlermanager) donne à votre boutique PrestaShop 8 ou 9 le contrôle fin du trafic généré par les bots IA : GPTBot d’OpenAI, ClaudeBot d’Anthropic, Google-Extended, Applebot-Extended, PerplexityBot, Bytespider de ByteDance, et 25+ autres crawlers à jour de mai 2026.
Trois mécanismes de protection complémentaires :
- Robots.txt visual builder — autorise/bloque chaque bot via un interrupteur, applique un préréglage en un clic, écrit le fichier sans casser vos directives manuelles.
- Blocage HTTP 403 — pour les bots qui ignorent robots.txt (Bytespider, anthropic-ai legacy), retourne un code 403 dès la première requête, avant tout traitement PrestaShop.
- Statistiques de crawl — suivi temps réel via hook + import des logs Apache/Nginx pour mesurer rétroactivement le trafic IA.
# BEGIN DataFirefly AI Crawler Manager et # END DataFirefly AI Crawler Manager. Tout le reste du fichier est préservé tel quel et un fichier .bak est créé à chaque écriture.
Pré-requis
- PrestaShop 8.0 → 9.x
- PHP 7.4 minimum (PHP 8.0 à 8.3 recommandé)
- MySQL 5.7 / MariaDB 10.3 ou supérieur
- Droits d’écriture sur
/robots.txt(racine de la boutique) - Pour l’import des logs : accès en lecture au log d’accès Apache/Nginx (généralement
/var/log/apache2/access.log, ou~/logs/chez o2switch,~/access-logs/chez cPanel)
Installation
- Téléchargez le ZIP
dfaicrawlermanager-v1.0.0.zipdepuis votre compte DataFirefly. - Dans le back-office PrestaShop, allez dans Modules › Module Manager › Téléverser un module.
- Glissez-déposez le ZIP, attendez la confirmation puis cliquez sur Installer.
- Une fois installé, un nouvel onglet AI Crawler Manager apparaît dans le menu de gauche (sous Configurer).
L’installation crée 5 tables (préfixe ps_dfaicm_), seed automatiquement la liste des 30+ bots IA et insère 6 onglets d’administration.
composer install n’est requis. L’autoloader PSR-4 est embarqué dans le module sous le namespace DataFireflyAiCrawlerManager.
Premier démarrage — le tableau de bord
L’onglet AI Crawler Manager ouvre le tableau de bord. Sur une installation fraîche, vous voyez :
- Bots IA suivis : 30+ (compte des bots actifs dans la base)
- Bots bloqués : 0 (par défaut, tous les bots sont autorisés)
- Visites (30j) : 0 (le suivi temps réel ne démarre qu’après activation)
- Règles par chemin : 0
Trois actions recommandées à ce stade :
- Ouvrir le robots.txt visual builder et appliquer un préréglage (voir section dédiée).
- Activer le suivi temps réel dans Réglages pour commencer à collecter des statistiques.
- Optionnel : importer vos logs d’accès historiques pour voir le crawl IA des semaines précédentes.
Onglet Bots IA
La liste complète des 30+ bots suivis avec :
- Display name : nom marketing (ex. « ClaudeBot »)
- User-agent : chaîne exacte recherchée dans l’en-tête HTTP
- Éditeur : entreprise (OpenAI, Anthropic, Google, ByteDance, Meta…)
- Usage : training (entraînement LLM), assistant (réponses temps réel), search (moteur de recherche IA), crawl (générique)
- Respecte robots.txt : oui / non (indique si le robots.txt est suffisant)
- Statut : autorisé / bloqué
Actions disponibles :
- Modifier un bot pour ajuster son statut ou ajouter des notes internes.
- Bloquer / Débloquer en masse via les actions groupées en bas de liste.
- Toute modification déclenche une régénération automatique de robots.txt si l’option correspondante est activée dans les Réglages.
Robots.txt visual builder
L’onglet le plus utilisé : éditeur visuel du fichier robots.txt.
Préréglages en un clic
Cinq stratégies prêtes à l’emploi :
- Bloquer uniquement l’entraînement — stoppe les bots training (GPTBot, ClaudeBot, anthropic-ai, CCBot, Bytespider…) et garde les bots assistant et search autorisés (ChatGPT-User, Claude-User, OAI-SearchBot…). Recommandé pour la plupart des boutiques.
- Strict — bloque training + crawl générique, autorise assistant + search.
- Tout bloquer — disallow sur l’ensemble des 30+ bots IA.
- Tout autoriser — réinitialise tous les bots en autorisé.
- Bloquer Bytespider uniquement — utile si vous voulez juste cibler le crawler le plus agressif sans toucher au reste.
Toggle par bot
Chaque bot dispose d’un interrupteur :
- Vert = autorisé (aucune directive
Disallowdans robots.txt) - Rouge = bloqué (directive
User-agent: X / Disallow: /écrite dans la section gérée)
Un badge « ignore robots.txt » jaune indique les bots pour lesquels le robots.txt seul est insuffisant. Pour ceux-là, activez aussi le blocage HTTP 403 dans les Réglages (voir section dédiée).
Aperçu live
Le panneau de droite affiche en temps réel le contenu qui sera écrit dans robots.txt. Aspect type :
# BEGIN DataFirefly AI Crawler Manager
# Generated 2026-05-26 14:32 — do not edit manually
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Allow: /
User-agent: Bytespider
Disallow: /
# … autres bots …
Sitemap: https://example.com/sitemap.xml
# END DataFirefly AI Crawler Manager
Cliquez sur Enregistrer dans robots.txt pour écrire le fichier. Un fichier robots.txt.bak est créé à côté à chaque enregistrement.
Règles par chemin
Pour un blocage à granularité fine : autoriser un bot sur une partie du site, le bloquer sur une autre.
Exemple typique : autoriser ClaudeBot sur les fiches produits (pour que Claude les recommande) mais le bloquer sur le blog (pour ne pas céder votre contenu éditorial).
Une règle se compose de :
- Bot — bot ciblé (ou « tous les bots » via wildcard)
- Action —
allowoudisallow - Chemin — pattern URL avec wildcard
*et fin de chaîne$ - Position — ordre d’évaluation (les règles les plus spécifiques en premier)
Exemples de patterns :
/blog/*— toute URL commençant par/blog//*.pdf$— tous les fichiers PDF/order*— URLs de commande/module/dfsavecart/*— un module spécifique
Allow: / Disallow: classiques, mais elles servent aussi au blocage HTTP 403 si vous l’activez.
Blocage HTTP 403
Certains bots ignorent volontairement robots.txt. Le plus connu est Bytespider (ByteDance), mais aussi quelques anciennes versions d’anthropic-ai. Pour ces bots, robots.txt ne suffit pas.
Activez l’option « Activer le blocage HTTP 403 pour les bots bloqués » dans Réglages. Le module installe alors un hook actionDispatcherBefore qui :
- Détecte l’user-agent à chaque requête entrante (comparaison de chaînes en mémoire, ~0.1 ms).
- Si le bot est dans la liste des bloqués et que la requête correspond à une règle de blocage : renvoie immédiatement un HTTP 403 avant toute initialisation PrestaShop.
- Logge la tentative dans la table
ps_dfaicm_visitavec le flagblocked = 1.
Statistiques et import des logs
L’onglet Statistiques propose une vue à 7, 30 ou 90 jours avec :
- KPI globaux (visites totales, bots distincts, hits bloqués)
- Graphique de trafic quotidien
- Top bots par volume
- Top URLs visitées
- Journal des 50 visites les plus récentes (date, bot, URL, IP, statut)
Suivi temps réel
Si activé dans Réglages, chaque requête est inspectée et les hits de bots IA identifiés sont enregistrés. Le surcoût est négligeable : moins de 1 % du trafic atteint la phase d’écriture.
Import des logs Apache/Nginx
Permet de comptabiliser rétroactivement les visites IA, y compris celles d’avant l’installation du module.
- Dans Réglages, renseignez le chemin du fichier de log. Le module propose une auto-détection (chemins courants Apache, Nginx, o2switch, cPanel).
- Choisissez le format (combined par défaut, ou common).
- Dans l’onglet Statistiques, cliquez sur Analyser le log maintenant.
Le parsing est incrémental : un offset en octets est stocké en base. Relancer l’opération ne crée pas de doublons. Le module limite chaque exécution à 8 Mo pour éviter les timeouts ; pour les fichiers très volumineux, plusieurs passes successives suffisent.
Pour repartir de zéro (par exemple après une rotation de log), cochez Réinitialiser l’offset dans Réglages et relancez l’analyse.
Réglages
Récapitulatif des options disponibles :
robots.txt
- Auto-régénération : régénère robots.txt automatiquement quand un bot ou une règle change
- Crawl-delay : délai recommandé entre requêtes (0 = désactivé, 1-120 secondes)
- URL du sitemap : ajoutée en fin de section gérée
- Section globale Disallow : ajoute aussi une section
User-agent: *bloquant les zones sensibles (admin, panier, login)
Blocage HTTP
- Activer le blocage HTTP 403 : retourne immédiatement un 403 pour les bots bloqués (voir section dédiée)
Suivi temps réel
- Activer le suivi : enregistre chaque visite IA détectée
- Rétention : nombre de jours de conservation des visites individuelles (7 à 730, défaut 90). Les agrégats quotidiens sont conservés plus longtemps.
Import des logs
- Activer l’analyse des logs : active le bouton d’import dans l’onglet Statistiques
- Chemin du fichier : chemin absolu, avec auto-détection proposée
- Format : combined (Apache/Nginx par défaut) ou common
- Réinitialiser l’offset : à cocher pour relire le fichier entier
Stratégies de blocage recommandées
Le choix dépend de votre positionnement éditorial et commercial. Trois profils typiques :
Boutique e-commerce classique (recommandation par défaut)
Appliquer le préréglage « Bloquer uniquement l’entraînement ». Les bots d’entraînement (GPTBot, ClaudeBot, anthropic-ai, CCBot, Bytespider) sont bloqués. Les bots d’assistance temps réel (ChatGPT-User, Claude-User) et de recherche IA (OAI-SearchBot, PerplexityBot, Google-Extended) restent autorisés : vos produits peuvent toujours être recommandés dans ChatGPT, Claude, Perplexity et Google AI Overviews.
Marque premium / contenu éditorial fort
Préréglage « Strict » + règles par chemin pour autoriser certaines zones. Exemple : bloquer tous les bots IA partout, sauf /produit/* autorisé pour ChatGPT-User et Claude-User. Vos descriptions produits restent référencées dans les assistants, votre blog et vos guides sont protégés.
Boutique en plein lancement / faible volume éditorial
Préréglage « Tout autoriser ». La visibilité dans les moteurs de réponse IA dépasse largement le risque de cession de contenu. Vous repasserez à un blocage plus strict quand votre catalogue et votre blog auront pris de la valeur.
Maintenance
Purge automatique
Les visites individuelles plus anciennes que la rétention configurée sont supprimées automatiquement lors de chaque parsing de logs. Vous pouvez aussi déclencher une purge manuelle depuis l’onglet Statistiques (bouton « Purger les anciennes visites »).
Sauvegarde du robots.txt
Chaque écriture crée un robots.txt.bak à côté du fichier original. En cas d’erreur, vous pouvez le restaurer manuellement par FTP ou via votre cPanel.
Mise à jour de la liste de bots
Les nouveaux bots IA sont ajoutés via les mises à jour du module. La table ps_dfaicm_bot est mise à jour en mode « merge » : un bot que vous avez personnalisé manuellement n’est jamais écrasé.
Dépannage
robots.txt n’est pas inscriptible
Le tableau de bord affiche un badge rouge « Not writable ». Vérifiez :
- Permissions du fichier
/robots.txt: doit être en 644 minimum, et le propriétaire doit être l’utilisateur PHP/Apache - Si le fichier n’existe pas, vérifiez les permissions du dossier racine (755 + propriétaire correct)
- Sur certains hébergements mutualisés, le robots.txt est généré dynamiquement par PrestaShop : désactivez l’option correspondante dans Préférences › Trafic › SEO et URLs
L’auto-détection du log d’accès ne trouve rien
Le module cherche les chemins suivants : /var/log/apache2/access.log, /var/log/nginx/access.log, ~/logs/, ~/access-logs/. Sur d’autres hébergements, renseignez manuellement le chemin. Si vous ne le connaissez pas, contactez votre support hébergeur ou cherchez dans la documentation de votre panneau de contrôle.
Le parsing de logs prend trop de temps
Le module limite chaque exécution à 8 Mo pour éviter les timeouts PHP. Pour un fichier de 500 Mo, prévoyez 60 à 70 passes. Chaque clic sur « Analyser le log maintenant » reprend là où la précédente s’est arrêtée grâce à l’offset stocké.
Un bot bloqué apparaît quand même dans les statistiques
Normal : le suivi temps réel enregistre TOUTES les visites IA détectées, y compris celles bloquées (avec le flag was_blocked = 1). Cela vous permet de mesurer combien de tentatives sont effectivement bloquées par votre configuration.
Un bot ignore robots.txt malgré ma règle
Confirmez avec un import de logs : si vous voyez encore des hits avec statut 200, le bot ignore effectivement robots.txt. Activez le blocage HTTP 403 dans Réglages. À partir de ce moment, les hits du bot apparaîtront avec statut 403 et flag was_blocked = 1.
Désinstallation
Depuis Modules › Module Manager, cliquez sur Désinstaller sur la fiche du module. L’opération :
- Supprime les 5 tables
ps_dfaicm_* - Supprime les 6 onglets d’administration
- Retire la section gérée du robots.txt (les marqueurs sentinelles et tout ce qu’ils délimitent)
- Préserve le reste du robots.txt et le fichier
robots.txt.bak
Référence technique
- Slug technique :
dfaicrawlermanager - Namespace :
DataFireflyAiCrawlerManager - Tables créées :
ps_dfaicm_bot,ps_dfaicm_rule,ps_dfaicm_category_rule,ps_dfaicm_visit,ps_dfaicm_visit_daily - Hooks utilisés :
actionDispatcherBefore,actionAdminControllerSetMedia,displayBackOfficeHeader - Onglets back-office : Dashboard, Bots, Path rules, Builder, Statistics, Settings (sous AdminParentConfigure)
- Clés de configuration :
DFAICM_AUTO_REGEN,DFAICM_VISIT_LOG,DFAICM_HTTP_BLOCK,DFAICM_LOG_PARSING,DFAICM_LOG_PATH,DFAICM_LOG_FORMAT,DFAICM_LAST_PARSE,DFAICM_LAST_OFFSET,DFAICM_RETENTION,DFAICM_CRAWL_DELAY,DFAICM_SITEMAP_URL,DFAICM_GLOBAL_DISALLOW,DFAICM_INSTALLED_AT
Support
Pour toute question technique, contactez l’équipe DataFirefly à contact@datafirefly.com ou consultez votre espace client sur datafirefly.com.