AI-crawlers blokkeren: robots.txt is een verzoek, geen slot

|Auteur: Redactie van QUASA|6 min. leestijd| 1
AI-crawlers blokkeren: robots.txt is een verzoek, geen slot

Wil je AI-crawlers selectief blokkeren, leg dan per crawler vast welke toegang je toestaat en controleer daarna wat er werkelijk gebeurt. Volgens Google Search Central kan robots.txt het gedrag van crawlers niet afdwingen: een crawler beslist zelf of hij de instructies volgt. Een blokkade die een verzoek daadwerkelijk tegenhoudt, moet op je server, CDN of web application firewall (WAF) worden toegepast.

Maak daarbij onderscheid tussen crawlers voor modeltraining, AI-zoekfuncties en gewone zoekmachines. Blokkeer je ze als één groep, dan kun je ook de toegang afsluiten die je voor vindbaarheid wilt behouden. De controle bestaat daarom uit meer dan het lezen van robots.txt: vergelijk de gekozen regels met de verzoeken in je logs en met de HTTP-respons op de gevraagde pagina.

Bepaal per crawler het doel

Maak een lijst van de crawlers die je in je verkeer ziet, hun opgegeven naam, de bezochte paden en de toegang die je wilt geven. Het overzicht van OpenAI-crawlers onderscheidt GPTBot voor inhoud die mogelijk bij modeltraining wordt gebruikt, OAI-SearchBot voor zoekfuncties in ChatGPT en ChatGPT-User voor bepaalde door gebruikers gestarte bezoeken. OpenAI behandelt de instellingen voor GPTBot en OAI-SearchBot afzonderlijk; op ChatGPT-User zijn robots.txt-regels mogelijk niet van toepassing.

Dat onderscheid maakt een gerichte keuze mogelijk. Je kunt GPTBot instrueren je site niet te crawlen en OAI-SearchBot toegang blijven geven als je in de zoekfuncties van ChatGPT wilt verschijnen. Neem gewone zoekcrawlers, zoals Googlebot, afzonderlijk op in de lijst. Noteer ook of je een heel domein wilt weren of alleen een bepaald pad: een regel voor de volledige site heeft een ander gevolg dan een regel voor een afgebakende verzameling pagina’s.

Schrijf regels voor de bedoelde bot en het bedoelde pad

Bekijk eerst het robots.txt-bestand dat op de betreffende host wordt aangeboden, inclusief bestaande algemene regels. Een User-agent-regel benoemt de crawler; Disallow benoemt het pad dat die crawler moet mijden. Het pad / omvat de hele site. Controleer de officiële botnaam voordat je een groep toevoegt en kijk of een bestaande regel voor alle crawlers verder reikt dan je bedoelde wijziging.

Een voorwaardelijk voorbeeld: wil je GPTBot voor de hele site weren, maak dan een groep met User-agent: GPTBot en daaronder Disallow: /. Wil je OAI-SearchBot toegang geven, behandel die crawler afzonderlijk; een expliciete groep met Allow: / kan je keuze zichtbaar maken. Dit voorbeeld beschrijft een beleidskeuze voor die bots, geen standaardinstelling voor iedere website. Controleer na publicatie of het aangeboden bestand de bedoelde regels bevat en of de relevante URL’s onder de juiste groep vallen.

Gebruik robots.txt niet als beveiliging voor vertrouwelijke inhoud. Het bestand is openbaar en een crawler die de instructie negeert, kan het genoemde pad nog steeds aanvragen. Pagina’s die besloten moeten blijven, hebben toegangscontrole op de inhoud zelf nodig. Houd ook crawlen en indexeren uit elkaar: een URL die een zoekcrawler volgens robots.txt niet mag ophalen, kan onder omstandigheden toch als URL in zoekresultaten verschijnen.

Vergelijk de regels met de verzoeken in je logs

Bekijk in CDN- en serverlogs welke crawlernaam wordt opgegeven, welke URL wordt gevraagd, wanneer dat gebeurt en welke HTTP-status terugkomt. Vergelijk verzoeken op een verboden pad van vóór en na de wijziging. Een verzoek op dat pad na publicatie verdient onderzoek, maar de opgegeven user-agent bewijst op zichzelf niet welke partij het verzoek heeft verstuurd: die tekst kan worden nagebootst.

Volgens de documentatie van Cloudflare AI Crawl Control toont het product per crawler toegestane en mislukte verzoeken en geconstateerde robots.txt-overtredingen; een mislukt verzoek kan ook door een andere regel of een fout ontstaan. Op het gratis plan berust de herkenning daar op de user-agent. Een telling van overtredingen is dus een aanwijzing om concrete aanvragen te bekijken, geen sluitend bewijs van de identiteit van iedere aanvrager.

Leg bij opvallende aanvragen de gevraagde URL naast de robots.txt-regel die op dat moment gold. Kijk vervolgens welke beveiligingsregel op het verzoek is toegepast en of de respons de pagina-inhoud bevatte. Zo onderscheid je een crawler die een instructie negeert van een verzoek dat al door een bestaande WAF-regel, omleiding of fout wordt afgehandeld.

Dwing een blokkade gericht af

Blijft een crawler verboden inhoud opvragen, maak dan een toegangsregel voor de vastgestelde bot en, waar mogelijk, alleen voor de betreffende paden. Dat kan op server-, CDN- of WAF-niveau. Stel vast waarop de herkenning steunt voordat je de regel activeert: uitsluitend filteren op een opgegeven user-agent is eenvoudig te ontwijken, terwijl een brede regel voor bots of IP-adressen ook toegestane crawlers en bezoekers kan raken.

Bij AI Crawl Control leidt de keuze om een crawler te blokkeren tot een WAF-regel die de blokkade afdwingt. Op betaalde plannen is voor geblokkeerde verzoeken een aangepaste respons met HTTP-status 403 of 402 mogelijk. Een algemene blokkade in zo’n beheerscherm is niet vanzelf beperkt tot het pad dat je in robots.txt hebt genoemd; als dat onderscheid nodig is, moet de afdwingende regel daarop worden ingericht.

Controleer de respons én de gewenste bereikbaarheid

Vraag na activering een URL op die geweigerd moet worden en een URL die bereikbaar moet blijven. Bekijk in beide gevallen de feitelijke HTTP-status en responsinhoud, niet alleen de ingestelde actie. Controleer daarna de logs van echte verzoeken: de bedoelde crawler moet op het verboden pad worden geweigerd, terwijl crawlers die je bewust toestaat de openbare inhoud nog kunnen ophalen.

Een eigen verzoek met een nagebootste user-agent is nuttig om te zien hoe de regel op precies dat verzoek reageert. Het bewijst niet hoe een echte crawler vanaf een andere netwerkherkomst wordt behandeld. Vergelijk daarom ook de toegepaste beveiligingsregels en de waargenomen responsen van werkelijk crawlerverkeer. Noteer het tijdstip van de wijziging, zodat je latere aanvragen met de juiste versie van robots.txt en de toegangsregels kunt vergelijken.

Controleer ten slotte de bereikbaarheid van zoekcrawlers die je wilt behouden. Wie een AI-zoekcrawler weert, kan daarmee de verschijning van pagina’s in diens antwoorden en bronverwijzingen beperken; een instructie voor een trainingscrawler dient een ander doel. Volg na een wijziging zowel succesvolle crawlerverzoeken als verwijzend verkeer uit zoekdiensten. Een korte schommeling in bezoeken is op zichzelf geen bewijs dat de nieuwe regel de oorzaak is.

Lees ook:

Delen:

Abonneer je op onze nieuwsbrief

Ontvang het laatste nieuws over Web3, AI en crypto rechtstreeks in je inbox.

0