Was robots.txt tut (und nicht tut)
robots.txt ist eine Textdatei, die im Stammverzeichnis Ihrer Website platziert wird (https://example.com/robots.txt) und Such-Engine-Crawlern mitteilt, welche Seiten oder Verzeichnisse sie besuchen sollen oder nicht.
Es ist ein Hoflichkeitsprotokoll, keine Sicherheitsmassnahme. Wesentliche Einschrankungen:
- robots.txt gilt nur fur Crawler, die es respektieren (alle grossen Suchmaschinen tun es; bosarige Scraper nicht)
- Das Sperren einer URL in robots.txt verhindert nicht, dass Google sie indexiert, wenn andere Seiten darauf verlinken
- Es kann keine privaten Inhalte schutzen, verwenden Sie dafur Authentifizierung
- Syntaxfehler brechen Regeln still; ein falsch gesetztes Zeichen kann Ihre gesamte Website blockieren
Die grundlegende Syntax
Eine robots.txt-Datei besteht aus Datensatzen, jeder spezifiziert einen User-Agent und Direktiven:
User-agent: *
Disallow: /private/
Allow: /public/
User-agent: Googlebot
Disallow: /staging/
Sitemap: https://example.com/sitemap.xml
User-agent:, welcher Crawler die folgenden Direktiven betrifft. * bedeutet alle Crawler.
Disallow:, Pfade, die der Crawler nicht besuchen soll. Ein leeres Disallow: bedeutet "nichts sperren" (alles erlauben).
Allow:, erlaubt ausdrucklich einen Pfad, der sonst durch eine breitere Disallow:-Regel blockiert wurde.
Sitemap:, optional, teilt Crawlern mit, wo Ihre XML-Sitemap zu finden ist.
Wichtige Regeln
Pfadabgleich ist prasfix-basiert
Disallow: /private/ blockiert jede URL, die mit /private/ beginnt, einschliesslich /private/seite.html, /private/bilder/ usw.
Disallow: /seite.html blockiert nur diesen genauen Pfad.
Disallow: / blockiert die gesamte Website. Das ist korrekte Syntax zum Blockieren aller Crawler, aber gilt fur alles.
Platzhalter
* in einem Disallow:-Pfad stimmt mit jeder Zeichenfolge uberein:
Disallow: /*.pdf$, blockiert alle PDFs ($verankert das Ende der URL)Disallow: /search?, blockiert alle Suchergebnis-URLs
Haufige Fehler
CSS und JavaScript blockieren
Disallow: /assets/
Wenn Ihre CSS- und JavaScript-Dateien in /assets/ liegen, verhindert deren Blockierung, dass Googlebot Ihre Seite korrekt rendert.
Disallow: mit noindex verwechseln
Disallow: stoppt das Crawlen. noindex (in einem HTTP-Header oder Meta-Tag) stoppt die Indexierung. Das sind verschiedene Dinge:
- Eine durch robots.txt gesperrte Seite kann aufgrund von Signalen anderer Seiten trotzdem indexiert werden
- Um sowohl Crawlen als auch Indexierung zu verhindern:
noindexverwenden (Crawlen nicht sperren, sonst kann Google die noindex-Direktive nicht sehen) - Um die Indexierung einer crawlbaren Seite zu verhindern:
<meta name="robots" content="noindex">zur Seite hinzufugen
Leeres Disallow = Alles erlauben
User-agent: *
Disallow:
Das bedeutet "nichts sperren", es erlaubt allen Crawlern den Zugriff auf alles.
Gros-Klein-Schreibung
URLs in robots.txt unterscheiden Gros-/Kleinschreibung. Disallow: /Privat/ sperrt nicht /privat/.
Eine minimale korrekte robots.txt
Fur eine Standard-Website ohne zu versteckende Seiten:
User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml
Das erlaubt ausdrucklich alle Crawler und weist sie auf Ihre Sitemap hin.
robots.txt validieren
Verwenden Sie den robots.txt-Tester der Google Search Console zur Validierung Ihrer Datei. Der robots.txt-Generator auf dieser Seite erstellt eine gultige robots.txt uber eine Formularoberflache.
Kurz zusammengefasst
robots.txt verwendet User-agent:, Disallow: und Allow:-Direktiven, um das Crawler-Verhalten zu leiten (nicht zu erzwingen). Haufige Fehler: Assets blockieren, Disallow mit noindex verwechseln und Platzhalterpfade falsch verwenden. Immer vor dem Deployment validieren, ein einzelner Syntaxfehler kann versehentlich Ihre gesamte Website vom Crawlen ausschliessen.