BrowserTools
Startseite / Validatoren / Robots.txt-Tester

Robots.txt-Tester

Prüfen Sie, ob ein Crawler wie Googlebot oder GPTBot eine Seite besuchen darf und welche Zeile der robots.txt das entscheidet.

Robots.txt-Tester wird geladen… Wenn nichts passiert, aktiviere JavaScript.

Eine robots.txt sieht einfach aus, doch die Art, wie Crawler sie lesen, folgt ein paar Regeln, die fast jeden überraschen. Ein Crawler kombiniert seine eigene Gruppe nicht mit der Gruppe User-agent: *: Sobald eine Gruppe ihn nennt, gelten die allgemeinen Regeln nicht mehr. Zwischen Allow und Disallow spielt die Reihenfolge der Zeilen keine Rolle; es gewinnt die Regel mit dem längsten passenden Pfad, und sind ein Allow und ein Disallow gleich lang, gewinnt Allow. Pfade unterscheiden Groß- und Kleinschreibung, ein * passt auf beliebig viele Zeichen, ein $ am Ende verankert den Vergleich am Ende der URL, und ein leeres Disallow sperrt nichts. Seit 2022 sind diese Regeln in RFC 9309 festgehalten, dem Standard des Robots Exclusion Protocol, dem Google, Bing und die meisten großen Crawler folgen.

Häufig gestellte Fragen

Befolgt ein Crawler mit eigener Gruppe noch User-agent: *?
Nein. Ein Crawler verwendet nur die spezifischste Gruppe, die ihn nennt. Enthält Ihre Datei eine Gruppe für Googlebot, ignoriert Googlebot alles in der Gruppe User-agent: *, und jede Regel, die er befolgen soll, muss in seiner eigenen Gruppe wiederholt werden. Nennen mehrere Gruppen denselben Crawler, werden ihre Regeln zusammengeführt. Der Tester zeigt, welche Gruppe für den gewählten Crawler verwendet wurde.
Sowohl Allow als auch Disallow passen auf meine URL. Welche Regel gewinnt?
Die mit dem längeren Pfad, gezählt in Zeichen, unabhängig von der Reihenfolge in der Datei. Bei Disallow: /shop und Allow: /shop/sale ist /shop/sale/shoes erlaubt, weil /shop/sale länger ist. Sind beide Regeln gleich lang, etwa Allow: /page und Disallow: /page, gewinnt Allow. Die Ergebnistabelle zeigt die entscheidende Regel und die Regel, die sie geschlagen hat.
Wie funktionieren * und $ in der robots.txt?
Ein Sternchen passt auf eine beliebige Zeichenfolge, auch auf keine, und ein Dollarzeichen ganz am Ende bedeutet, dass die URL dort enden muss. Disallow: /*.php sperrt /index.php und /folder/page.php?id=1, Disallow: /*.php$ dagegen sperrt /index.php, aber nicht /index.php?id=1. Ein abschließendes Sternchen ändert nichts, /fish* ist also dasselbe wie /fish. Jede Regel ist ein Präfixvergleich ab dem Anfang des Pfads, daher sperrt /fish auch /fish.html und /fishing.
Unterscheiden Pfade in der robots.txt Groß- und Kleinschreibung?
Ja. Disallow: /Private/ sperrt /private/ nicht. Die Namen der Direktiven und die User-agent-Tokens unterscheiden keine Groß- und Kleinschreibung, user-agent: GOOGLEBOT und User-agent: Googlebot bedeuten also dasselbe, die Pfade in Allow und Disallow werden aber exakt verglichen.
Entfernt eine Sperre in der robots.txt eine Seite aus Google?
Nicht unbedingt. Die robots.txt steuert das Crawling, nicht die Indexierung. Eine gesperrte URL kann weiterhin in den Suchergebnissen erscheinen, meist ohne Beschreibung, wenn andere Websites auf sie verlinken. Um eine Seite aus dem Index herauszuhalten, lassen Sie sie crawlen und fügen ein robots-Meta-Tag mit noindex oder einen X-Robots-Tag-Header hinzu. Die Zeile Noindex in der robots.txt funktioniert bei Google seit 2019 nicht mehr.
Wie sperre ich KI-Crawler wie GPTBot und ClaudeBot?
Fügen Sie eine Gruppe hinzu, die sie nennt, zum Beispiel User-agent: GPTBot in einer Zeile, User-agent: ClaudeBot in der nächsten und danach Disallow: /. Wählen Sie jeden Crawler in diesem Tester aus, um das Ergebnis zu prüfen. Beachten Sie, dass manche Tokens wie Google-Extended und Applebot-Extended Steuer-Tokens und keine Crawler sind und dass Abrufe im Auftrag eines Nutzers die robots.txt unter Umständen gar nicht beachten.
Warum ist /robots.txt immer erlaubt?
Weil ein Crawler die Datei lesen muss, bevor er sie befolgen kann. RFC 9309 legt fest, dass /robots.txt implizit erlaubt ist, eine Regel Disallow: / hindert einen Crawler also nie daran, die Datei selbst abzurufen. Der Tester berücksichtigt das für jeden Pfad, der /robots.txt lautet.
Wie groß darf eine robots.txt sein?
RFC 9309 verlangt, dass Crawler mindestens 500 Kibibyte verarbeiten, und Google hört dort auf: Regeln nach den ersten 500 KiB werden ignoriert. Eine Datei in dieser Größe wird meist mit einer Zeile pro URL erzeugt, und das Zusammenfassen von Pfaden mit Platzhaltern macht sie deutlich kürzer und leichter zu pflegen. Der Tester graut jede Zeile jenseits der Grenze aus.
Warum erscheint unter meiner URL ein anderer Pfad?
Der Tester vergleicht Pfade so, wie Crawler es tun. Eine vollständige URL wird auf Pfad und Query-String reduziert, und die Prozentkodierung wird normalisiert: Nicht-ASCII-Zeichen werden als UTF-8 kodiert, und Escapes von Buchstaben, Ziffern und - . _ ~ werden dekodiert. So passen /caf%C3%A9 und /café oder /%7Euser und /~user auf dieselben Regeln. Die normalisierte Form wird unter Ihrer Eingabe angezeigt, wenn sie abweicht.

Über Robots.txt-Tester

Dieser Tester setzt den Standard direkt in Ihrem Browser um. Fügen Sie Ihre robots.txt ein, geben Sie die gewünschten URLs oder Pfade ein, einen pro Zeile, und wählen Sie einen Crawler: Googlebot mit seinen Varianten für Bilder, News und Videos, Bingbot, Applebot, DuckDuckBot, YandexBot, KI-Crawler wie GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot und CCBot, Bots für Link-Vorschauen, SEO-Tools oder ein eigenes Token. Für jeden Pfad sehen Sie Erlaubt oder Gesperrt, die genaue Regel, die entschieden hat, mit Zeilennummer, und die unterlegene Gegenregel, sodass sich ein Ergebnis wie "gesperrt durch Disallow: /*.pdf$ in Zeile 5" leicht nachvollziehen lässt. Die Dateiansicht hebt die Gruppe hervor, die für den gewählten Crawler gilt, und färbt jede verwendete Zeile ein.

Der Tester weist außerdem auf Probleme hin, durch die sich eine robots.txt anders verhält als beabsichtigt: Regeln vor der ersten User-agent-Zeile, unbekannte oder falsch geschriebene Direktiven, vollständige URLs, wo ein Pfad erwartet wird, eine UTF-8-Bytereihenfolgemarke am Anfang, Direktiven wie Noindex, die Crawler nicht mehr beachten, und Dateien über den 500 KiB, die Google liest. Er listet die Sitemap-Zeilen und das geltende Crawl-delay auf, mit dem Hinweis, dass Google Crawl-delay ignoriert. Besonderheiten einzelner Crawler sind eingebaut: Googlebot-Image greift auf die Googlebot-Gruppe zurück, Applebot folgt den Googlebot-Regeln, wenn er nicht genannt wird, und die Crawler AdsBot und AdSense ignorieren die Gruppe * vollständig. Nichts wird abgerufen oder hochgeladen, Sie können also einen Entwurf testen, bevor er online geht.

Ein Standard, der 28 Jahre brauchte

Martijn Koster schlug die Regeln zum Ausschluss von Robots im Februar 1994 auf der Mailingliste www-talk vor, nachdem ein schlecht programmierter Crawler seinen Server bei Nexor überlastet hatte. Ende Juni hatten die damaligen Robot-Autoren zugesagt, sich daran zu halten, und das folgende Vierteljahrhundert stützte sich das ganze Web auf eine Konvention, die nie formell standardisiert worden war. Jede Suchmaschine legte die Grenzfälle etwas anders aus, von Platzhaltern bis zur Dateigröße.

Im Juli 2019, zum 25. Jahrestag des ursprünglichen Vorschlags, reichte Google gemeinsam mit Koster und anderen Suchmaschinen einen Entwurf bei der IETF ein und veröffentlichte den C++-Parser als Open Source, den Googlebot seit zwanzig Jahren verwendete. Der Entwurf durchlief drei weitere Jahre Prüfung und erschien im September 2022 als RFC 9309. Die Grundregeln hatten sich seit 1994 kaum verändert, doch der RFC klärte endlich die Fragen, über die jahrzehntelang gestritten worden war: Allow ist offiziell, der längste Treffer gewinnt, und Crawler müssen mindestens 500 KiB lesen.

Unterstützen