Wie Robots.txt-Regeln funktionieren: Gruppen und User-Agent-Auswahl
Die Datei robots.txt steuert, welche Bereiche einer Website von Crawlern besucht werden dürfen. Doch wie entscheidet ein Crawler, welche Regeln für ihn gelten? Der Schlüssel liegt in der Struktur der Datei: Sie besteht aus mehreren Gruppen, die jeweils mit einer oder mehreren User-agent-Zeilen beginnen. Jede Gruppe definiert anschließend Allow- und Disallow-Regeln, die für die genannten Crawler gelten.
Ein Crawler wie Googlebot durchsucht die Datei von oben nach unten und sucht nach der ersten Gruppe, deren User-agent auf ihn zutrifft. Dabei gilt: Ein spezifischer Token wie Googlebot hat Vorrang vor dem Platzhalter *. Falls keine passende Gruppe gefunden wird, greift der Crawler auf die *-Gruppe zurück, sofern vorhanden. Gibt es auch diese nicht, darf der Crawler alle URLs besuchen. Wichtig ist, dass eine spezifische Gruppe die *-Gruppe vollständig ersetzt, nicht ergänzt. Enthält die Googlebot-Gruppe beispielsweise Disallow: /private/, während die *-Gruppe Allow: /private/ enthält, wird der Zugriff auf /private/ für Googlebot dennoch blockiert.
Ein besonderer Fall sind hyphenierte Tokens wie Googlebot-Image. Hier greift die sogenannte Parent-Token-Regel: Der Crawler prüft zunächst, ob eine Gruppe mit dem exakten Token existiert. Falls nicht, fällt er auf den übergeordneten Token (Googlebot) zurück. Erst wenn auch dieser nicht vorhanden ist, wird die *-Gruppe berücksichtigt. Diese Hierarchie sorgt dafür, dass spezifische Crawler-Versionen gezielt gesteuert werden können, ohne die Regeln für den Haupt-Crawler zu beeinflussen.
Der Robots.txt-Prüfer simuliert diesen Auswahlprozess präzise und zeigt an, welche Gruppe für einen bestimmten Crawler gilt. So lässt sich vorab prüfen, ob die gewünschten Regeln greifen, etwa wenn man GPTBot für bestimmte Pfade sperren möchte, während Googlebot weiterhin Zugriff hat.