PS PrestaShop Gemiddeld

AI Crawler Manager — Documentatie

Complete handleiding voor de module dfaicrawlermanager: installatie, visuele robots.txt-builder, HTTP 403-blokkering, import van Apache/Nginx-logs en blokkeringsstrategieën voor AI-bots.

Bijgewerkt Moduleversie 1.0.0

Presentatie

AI Crawler Manager (technische slug: dfaicrawlermanager) geeft uw PrestaShop 8- of 9-winkel fijnmazige controle over het verkeer van AI-bots: GPTBot van OpenAI, ClaudeBot van Anthropic, Google-Extended, Applebot-Extended, PerplexityBot, Bytespider van ByteDance, en 25+ andere crawlers, bijgewerkt tot mei 2026.

Drie complementaire beschermingsmechanismen:

  • Visuele robots.txt-builder: staat elke bot toe of blokkeert hem via een schakelaar, past met één klik een preset toe en schrijft het bestand zonder uw handmatige directieven te breken.
  • HTTP 403-blokkering: voor bots die robots.txt negeren (Bytespider, legacy anthropic-ai) wordt vanaf de eerste request een 403-code teruggegeven, vóór elke PrestaShop-verwerking.
  • Crawlstatistieken: realtime opvolging via hook + import van Apache/Nginx-logs om het AI-verkeer met terugwerkende kracht te meten.
Opmerking: de module raakt uw robots.txt nooit aan buiten haar eigen sectie, afgebakend door de markeringen # BEGIN DataFirefly AI Crawler Manager en # END DataFirefly AI Crawler Manager. De rest van het bestand blijft ongewijzigd en bij elke schrijfactie wordt een .bak-bestand aangemaakt.

Vereisten

  • PrestaShop 8.0 → 9.x
  • Minimaal PHP 7.4 (PHP 8.0 tot 8.3 aanbevolen)
  • MySQL 5.7 / MariaDB 10.3 of hoger
  • Schrijfrechten op /robots.txt (root van de winkel)
  • Voor de logimport: leestoegang tot de Apache/Nginx-accesslog (meestal /var/log/apache2/access.log, of ~/logs/ bij o2switch, ~/access-logs/ bij cPanel)

Installatie

  1. Download de ZIP dfaicrawlermanager-v1.0.0.zip via uw DataFirefly-account.
  2. Ga in de PrestaShop-backoffice naar Modules › Modulebeheer › Een module uploaden.
  3. Sleep de ZIP erin, wacht op de bevestiging en klik op Installeren.
  4. Na de installatie verschijnt een nieuw tabblad AI Crawler Manager in het linkermenu (onder Configureren).

De installatie maakt 5 tabellen aan (voorvoegsel ps_dfaicm_), seedt automatisch de lijst van 30+ AI-bots en voegt 6 beheertabbladen toe.

Tip: er is geen composer install nodig. De PSR-4-autoloader is in de module ingebouwd onder de namespace DataFireflyAiCrawlerManager.

Eerste start — het dashboard

Het tabblad AI Crawler Manager opent het dashboard. Op een verse installatie ziet u:

  • Gevolgde AI-bots: 30+ (telling van de actieve bots in de database)
  • Geblokkeerde bots: 0 (standaard zijn alle bots toegestaan)
  • Bezoeken (30 d): 0 (de realtime opvolging start pas na activering)
  • Padregels: 0

Drie aanbevolen acties in deze fase:

  1. De visuele robots.txt-builder openen en een preset toepassen (zie de aparte sectie).
  2. De realtime opvolging inschakelen in Instellingen om statistieken te beginnen verzamelen.
  3. Optioneel: uw historische accesslogs importeren om het AI-crawlverkeer van de voorbije weken te zien.

Tabblad AI-bots

De volledige lijst van de 30+ gevolgde bots met:

  • Display name: marketingnaam (bijv. “ClaudeBot”)
  • User-agent: exacte string die in de HTTP-header wordt gezocht
  • Uitgever: bedrijf (OpenAI, Anthropic, Google, ByteDance, Meta…)
  • Gebruik: training (LLM-training), assistant (realtime antwoorden), search (AI-zoekmachine), crawl (generiek)
  • Respecteert robots.txt: ja / nee (geeft aan of robots.txt volstaat)
  • Status: toegestaan / geblokkeerd

Beschikbare acties:

  • Bewerken van een bot om zijn status aan te passen of interne notities toe te voegen.
  • Massaal blokkeren / deblokkeren via de groepsacties onderaan de lijst.
  • Elke wijziging triggert een automatische regeneratie van robots.txt als de bijbehorende optie in de Instellingen is ingeschakeld.

Visuele robots.txt-builder

Het meest gebruikte tabblad: de visuele editor van het robots.txt-bestand.

Presets met één klik

Vijf kant-en-klare strategieën:

  • Alleen training blokkeren: stopt de training-bots (GPTBot, ClaudeBot, anthropic-ai, CCBot, Bytespider…) en houdt de assistant– en search-bots toegestaan (ChatGPT-User, Claude-User, OAI-SearchBot…). Aanbevolen voor de meeste winkels.
  • Strikt: blokkeert training + generieke crawl, staat assistant + search toe.
  • Alles blokkeren: disallow voor alle 30+ AI-bots.
  • Alles toestaan: reset alle bots naar toegestaan.
  • Alleen Bytespider blokkeren: handig als u alleen de agressiefste crawler wilt targeten zonder de rest aan te raken.
Belangrijk: een preset overschrijft de status van alle betrokken bots. Vóór toepassing wordt een bevestiging gevraagd. Daarna kunt u bot per bot verfijnen.

Schakelaar per bot

Elke bot heeft een schakelaar:

  • Groen = toegestaan (geen Disallow-directief in robots.txt)
  • Rood = geblokkeerd (directief User-agent: X / Disallow: / geschreven in de beheerde sectie)

Een gele badge “negeert robots.txt” markeert de bots waarvoor robots.txt alleen niet volstaat. Schakel voor die bots ook de HTTP 403-blokkering in via de Instellingen (zie de aparte sectie).

Live-voorbeeld

Het rechterpaneel toont in realtime de inhoud die in robots.txt zal worden geschreven. Typisch voorbeeld:

# 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: /

# … andere bots …

Sitemap: https://example.com/sitemap.xml
# END DataFirefly AI Crawler Manager

Klik op Opslaan in robots.txt om het bestand te schrijven. Bij elke opslag wordt ernaast een robots.txt.bak-bestand aangemaakt.

Padregels

Voor fijnmazige blokkering: een bot toestaan op een deel van de site en hem elders blokkeren.

Typisch voorbeeld: ClaudeBot toestaan op de productpagina’s (zodat Claude ze kan aanbevelen) maar hem blokkeren op de blog (om uw redactionele inhoud niet weg te geven).

Een regel bestaat uit:

  • Bot: de doelbot (of “alle bots” via wildcard)
  • Actie: allow of disallow
  • Pad: URL-patroon met wildcard * en stringeinde $
  • Positie: evaluatievolgorde (de meest specifieke regels eerst)

Voorbeelden van patronen:

  • /blog/*: elke URL die begint met /blog/
  • /*.pdf$: alle PDF-bestanden
  • /order*: bestel-URL’s
  • /module/dfsavecart/*: een specifieke module
Opmerking: de padregels worden in robots.txt toegevoegd als klassieke Allow:/Disallow:-directieven, maar ze dienen ook voor de HTTP 403-blokkering als u die inschakelt.

HTTP 403-blokkering

Sommige bots negeren robots.txt bewust. De bekendste is Bytespider (ByteDance), maar ook enkele oude versies van anthropic-ai. Voor deze bots volstaat robots.txt niet.

Schakel de optie “HTTP 403-blokkering inschakelen voor geblokkeerde bots” in via de Instellingen. De module installeert dan een hook actionDispatcherBefore die:

  1. De user-agent detecteert bij elke binnenkomende request (stringvergelijking in het geheugen, ~0,1 ms).
  2. Als de bot in de lijst met geblokkeerde bots staat en de request overeenkomt met een blokkeringsregel: direct een HTTP 403 teruggeeft, vóór elke PrestaShop-initialisatie.
  3. De poging logt in de tabel ps_dfaicm_visit met de vlag blocked = 1.
Tip: de HTTP-blokkering bespaart CPU en database bij de meest volumineuze bots. Bytespider kan op een gemiddelde winkel goed zijn voor enkele duizenden hits per dag.

Statistieken en logimport

Het tabblad Statistieken biedt een weergave over 7, 30 of 90 dagen met:

  • Globale KPI’s (totaal aantal bezoeken, unieke bots, geblokkeerde hits)
  • Grafiek van het dagelijkse verkeer
  • Top bots op volume
  • Top bezochte URL’s
  • Logboek van de 50 meest recente bezoeken (datum, bot, URL, IP, status)

Realtime opvolging

Indien ingeschakeld in de Instellingen wordt elke request geïnspecteerd en worden de geïdentificeerde AI-bothits geregistreerd. De overhead is verwaarloosbaar: minder dan 1% van het verkeer bereikt de schrijffase.

Import van Apache/Nginx-logs

Maakt het mogelijk om AI-bezoeken met terugwerkende kracht mee te tellen, inclusief die van vóór de installatie van de module.

  1. Vul in Instellingen het pad naar het logbestand in. De module biedt autodetectie aan (gangbare paden voor Apache, Nginx, o2switch, cPanel).
  2. Kies het formaat (combined standaard, of common).
  3. Klik in het tabblad Statistieken op Log nu analyseren.

Het parsen is incrementeel: een offset in bytes wordt in de database opgeslagen. De operatie opnieuw uitvoeren creëert geen duplicaten. De module beperkt elke uitvoering tot 8 MB om timeouts te vermijden; voor zeer grote bestanden volstaan meerdere opeenvolgende passes.

Om vanaf nul te herbeginnen (bijvoorbeeld na een logrotatie), vinkt u Offset resetten aan in de Instellingen en start u de analyse opnieuw.

Instellingen

Overzicht van de beschikbare opties:

robots.txt

  • Autoregeneratie: regenereert robots.txt automatisch wanneer een bot of een regel wijzigt
  • Crawl-delay: aanbevolen vertraging tussen requests (0 = uitgeschakeld, 1-120 seconden)
  • Sitemap-URL: toegevoegd aan het einde van de beheerde sectie
  • Globale Disallow-sectie: voegt ook een sectie User-agent: * toe die de gevoelige zones blokkeert (admin, winkelwagen, login)

HTTP-blokkering

  • HTTP 403-blokkering inschakelen: geeft direct een 403 terug voor geblokkeerde bots (zie de aparte sectie)

Realtime opvolging

  • Opvolging inschakelen: registreert elk gedetecteerd AI-bezoek
  • Retentie: aantal dagen dat individuele bezoeken worden bewaard (7 tot 730, standaard 90). De dagelijkse aggregaten worden langer bewaard.

Logimport

  • Loganalyse inschakelen: activeert de importknop in het tabblad Statistieken
  • Bestandspad: absoluut pad, met voorgestelde autodetectie
  • Formaat: combined (Apache/Nginx standaard) of common
  • Offset resetten: aanvinken om het volledige bestand opnieuw te lezen

Aanbevolen blokkeringsstrategieën

De keuze hangt af van uw redactionele en commerciële positionering. Drie typische profielen:

Klassieke e-commercewinkel (standaardaanbeveling)

Pas de preset “Alleen training blokkeren” toe. De trainingsbots (GPTBot, ClaudeBot, anthropic-ai, CCBot, Bytespider) worden geblokkeerd. De realtime assistentiebots (ChatGPT-User, Claude-User) en AI-zoekbots (OAI-SearchBot, PerplexityBot, Google-Extended) blijven toegestaan: uw producten kunnen nog steeds worden aanbevolen in ChatGPT, Claude, Perplexity en Google AI Overviews.

Premiummerk / sterke redactionele inhoud

Preset “Strikt” + padregels om bepaalde zones toe te staan. Voorbeeld: alle AI-bots overal blokkeren, behalve /product/* toegestaan voor ChatGPT-User en Claude-User. Uw productbeschrijvingen blijven vindbaar in de assistenten, uw blog en gidsen zijn beschermd.

Winkel in lanceringsfase / weinig redactionele inhoud

Preset “Alles toestaan”. De zichtbaarheid in AI-antwoordmachines weegt ruimschoots op tegen het risico van contentafgifte. U schakelt over naar striktere blokkering wanneer uw catalogus en blog aan waarde hebben gewonnen.

Onderhoud

Automatische opschoning

Individuele bezoeken die ouder zijn dan de geconfigureerde retentie worden automatisch verwijderd bij elke loganalyse. U kunt ook een handmatige opschoning starten vanuit het tabblad Statistieken (knop “Oude bezoeken opschonen”).

Back-up van robots.txt

Elke schrijfactie maakt een robots.txt.bak aan naast het originele bestand. Bij een fout kunt u het handmatig herstellen via FTP of uw cPanel.

Update van de botlijst

Nieuwe AI-bots worden toegevoegd via de module-updates. De tabel ps_dfaicm_bot wordt bijgewerkt in “merge”-modus: een bot die u handmatig hebt aangepast wordt nooit overschreven.

Probleemoplossing

robots.txt is niet beschrijfbaar

Het dashboard toont een rode badge “Not writable”. Controleer:

  • Rechten op het bestand /robots.txt: minimaal 644, en de eigenaar moet de PHP/Apache-gebruiker zijn
  • Als het bestand niet bestaat, controleer de rechten van de rootmap (755 + juiste eigenaar)
  • Op sommige shared hostings wordt robots.txt dynamisch gegenereerd door PrestaShop: schakel de bijbehorende optie uit in Voorkeuren › Verkeer › SEO en URL’s

De autodetectie van de accesslog vindt niets

De module zoekt de volgende paden: /var/log/apache2/access.log, /var/log/nginx/access.log, ~/logs/, ~/access-logs/. Vul op andere hostings het pad handmatig in. Als u het niet kent, neem contact op met de support van uw hostingprovider of raadpleeg de documentatie van uw controlepaneel.

Het parsen van de logs duurt te lang

De module beperkt elke uitvoering tot 8 MB om PHP-timeouts te vermijden. Reken voor een bestand van 500 MB op 60 tot 70 passes. Elke klik op “Log nu analyseren” gaat verder waar de vorige is gestopt, dankzij de opgeslagen offset.

Een geblokkeerde bot verschijnt toch in de statistieken

Normaal: de realtime opvolging registreert ALLE gedetecteerde AI-bezoeken, ook de geblokkeerde (met de vlag was_blocked = 1). Zo kunt u meten hoeveel pogingen daadwerkelijk door uw configuratie worden geblokkeerd.

Een bot negeert robots.txt ondanks mijn regel

Bevestig het met een logimport: als u nog hits ziet met status 200, negeert de bot robots.txt inderdaad. Schakel de HTTP 403-blokkering in via de Instellingen. Vanaf dat moment verschijnen de hits van de bot met status 403 en vlag was_blocked = 1.

Deïnstallatie

Klik in Modules › Modulebeheer op Deïnstalleren op de modulekaart. De operatie:

  • Verwijdert de 5 tabellen ps_dfaicm_*
  • Verwijdert de 6 beheertabbladen
  • Verwijdert de beheerde sectie uit robots.txt (de markeringen en alles wat ze afbakenen)
  • Behoudt de rest van robots.txt en het bestand robots.txt.bak

Technische referentie

  • Technische slug: dfaicrawlermanager
  • Namespace: DataFireflyAiCrawlerManager
  • Aangemaakte tabellen: ps_dfaicm_bot, ps_dfaicm_rule, ps_dfaicm_category_rule, ps_dfaicm_visit, ps_dfaicm_visit_daily
  • Gebruikte hooks: actionDispatcherBefore, actionAdminControllerSetMedia, displayBackOfficeHeader
  • Backoffice-tabbladen: Dashboard, Bots, Path rules, Builder, Statistics, Settings (onder AdminParentConfigure)
  • Configuratiesleutels: 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

Neem voor technische vragen contact op met het DataFirefly-team via contact@datafirefly.com of raadpleeg uw klantomgeving op datafirefly.com.

Was deze pagina nuttig?

Loopt u nog vast? Neem contact op met support