Google heeft in een nieuwe aflevering van de interne videoserie "Non-Canonical Cabinet" precies uitgelegd wat een robots.txt-bestand wel en niet aankan: geen emoji's als user-agent, wel percent-encoding voor niet-Engelse tekens in paden, en een harde scheidslijn tussen crawltoegang en AI-trainingsbeleid. Search Advocate Gary Illyes en collega Cherry Prommawin lichten de regels toe aan de hand van de internetstandaard RFC 9309.
Robots.txt is een strikt protocol, geen ontwerpvrijheid
Illyes maakt meteen duidelijk dat een robots.txt-bestand geen creatieve speelruimte biedt. Het is een plat tekstbestand dat crawlers uitlezen voordat ze een site bezoeken, en de parser herkent slechts vier regels.
- user-agent
- allow
- disallow
- sitemap
Regels die met een hekje beginnen worden genegeerd als commentaar, dus een ASCII-tekening verstoort niets, maar voegt ook niets toe. Wie een regel verkeerd formatteert, loopt het risico dat Google die gewoon overslaat, met als gevolg dat de bedoelde pagina alsnog gecrawld wordt.
Emoji's en internationale tekens werken niet in de user-agent regel
Cherry vraagt in de video of een crawler met een kippenemoji als product token zich laat blokkeren met een regel als "user-agent 🐔". Illyes legt uit dat dat niet kan: een user-agent token mag alleen letters en streepjes bevatten, en een emoji is een multibyte UTF-8-teken dat niet binnen die beperking past.
Hetzelfde geldt voor niet-Engelse tekens in de naam van een crawler. Wil je wel paden blokkeren die accenten, Cyrillische tekens of andere internationale tekens bevatten, dan moet je die percent-encoderen, anders herkent de parser de regel domweg niet.
Crawltoegang blokkeren is iets anders dan AI-training verbieden
Een belangrijk punt uit de video: het blokkeren van een AI-crawler via robots.txt zegt niets over wat een bedrijf doet met content die het al eerder heeft verzameld. Crawlcontrole en trainingsbeleid zijn twee gescheiden zaken, ook als ze in de praktijk vaak op één hoop worden gegooid.
Wie AI-crawlers wil tegenhouden, moet de exacte, erkende user-agent-token van die crawler gebruiken. Een verkeerd geschreven of verouderde naam heeft simpelweg geen effect, hoe logisch de regel er voor een mens ook uitziet.
Robots.txt biedt geen beveiliging
Illyes herhaalt een punt dat regelmatig terugkomt in Google's documentatie: robots.txt is een verzoek aan crawlers, geen slot op de deur. Bots die de regels niet respecteren crawlen gewoon door, en het bestand voorkomt geen toegang door onbevoegde clients.
Daarom raadt Google aan elke regel te testen op het daadwerkelijke URL-patroon in plaats van te vertrouwen op hoe begrijpelijk een regel voor een mens aanvoelt. Een robots.txt-bestand dat logisch leest, is niet automatisch een robots.txt-bestand dat werkt.
Bron: Search Engine Roundtable