WikiPlus

Robots.txt Syntax verstehen — Anleitung für Anfänger und Profis

Die robots.txt-Syntax erscheint auf den ersten Blick simpel, hat aber subtile Regeln, die bei falscher Anwendung zu SEO-Problemen führen. Dieser Artikel erklärt jeden Bestandteil der robots.txt-Syntax detailliert, mit praktischen Beispielen für verschiedene Anwendungsfälle. Der WikiPlus Robots.txt Generator setzt diese Regeln korrekt um und erspart manuelles Schreiben.

Grundstruktur einer robots.txt-Datei

Eine robots.txt besteht aus einem oder mehreren Blöcken (auch 'Records' genannt). Jeder Block beginnt mit einem User-agent-Header, dem Disallow und Allow-Direktiven folgen. Zwischen Blöcken sollte eine Leerzeile stehen. Kommentare beginnen mit #. Beispiel: # Standard für alle Crawler User-agent: * Disallow: /admin/ Disallow: /privat/ Allow: /admin/public/ Sitemap: https://example.com/sitemap.xml # Spezifische Regeln für Googlebot User-agent: Googlebot Disallow: /legacy-content/ Crawl-delay: 1. Wichtige Regeln: User-agent-Werte sind case-insensitive (*ist 'alle Bots'). Pfade in Disallow und Allow sind case-sensitiv. Leerer Disallow-Wert (Disallow:) bedeutet 'nichts sperren' — Crawler darf alles crawlen. Disallow: / sperrt alles. Mehrere Direktiven für denselben User-agent können in einem Block stehen.

Wildcards und Sonderzeichen in robots.txt

robots.txt unterstützt begrenzte Wildcard-Funktionalität. Das Sternchen (*) in User-agent bedeutet 'alle Crawler'. In Pfaden (Disallow/Allow) hat * eine andere Bedeutung: Es matcht null oder mehr beliebige Zeichen. Das Dollarzeichen ($) am Ende eines Pfades matcht das Ende der URL. Beispiele: Disallow: /*.pdf$ — sperrt alle URLs, die mit .pdf enden. Disallow: /*?* — sperrt alle URLs mit einem Query-Parameter. Disallow: /gallery/*.jpg$ — sperrt alle .jpg-Dateien im gallery-Ordner. Wichtig: Google unterstützt Wildcards in Pfaden vollständig. Andere Crawler wie Bing interpretieren Wildcards ebenfalls, aber die Implementierung kann leicht variieren. Für maximale Kompatibilität: Halte Regeln so einfach wie möglich. Wildcards sind nützlich, aber komplexe Muster können schwer zu debuggen sein. Der WikiPlus Robots.txt Generator bietet vorgefertigte Regeln für häufige Anwendungsfälle ohne manuelle Wildcard-Formulierung.

Allow vs. Disallow: Priorität und Konflikte

Wenn mehrere Regeln auf eine URL zutreffen, verwendet Google ein klares Prioritäts-System. Die spezifischere Regel gewinnt: Disallow: /admin/ und Allow: /admin/public/ — /admin/public/ wird durch Allow erlaubt, alle anderen /admin/-Pfade durch Disallow gesperrt. Bei gleicher Spezifizität (gleichlanger Pfad) gewinnt die Allow-Regel. Beispiel: Disallow: /p* und Allow: /pub — /pub ist erlaubt (gleiche Länge, Allow-Regel gewinnt). Keine Vererbung zwischen Blöcken: Wenn ein spezifischer User-agent-Block existiert (z.B. User-agent: Googlebot), gelten die Regeln des *-Blocks nicht für diesen Crawler. Man muss gemeinsame Regeln wiederholen oder in einen gemeinsamen Block zusammenfassen. Google ignoriert Crawl-delay: Google respektiert die Crawl-delay-Direktive nicht — sie ist nur für wenige andere Crawler wie Bing relevant.

robots.txt testen und debuggen

Bevor eine robots.txt-Datei live geht, sollte sie gründlich getestet werden. Google Search Console robots.txt-Tester: Im Google Search Console-Dashboard unter 'Einstellungen' → 'robots.txt' gibt es einen integrierten Tester. Man kann URLs eingeben und sieht sofort, ob sie durch die aktuellen Regeln erlaubt oder gesperrt werden. Robots.txt via Browser prüfen: Einfach https://example.com/robots.txt aufrufen — die Datei sollte als Plaintext angezeigt werden. Wenn sie 404 zurückgibt oder nicht erreichbar ist, ist das ein Problem. Häufige Fehler: Kommentarzeichen fehlen (#), was Text als Direktive interpretiert wird. Pfade ohne führenden Slash (/), was zu Nichtfunktionieren der Regel führt. robots.txt im falschen Verzeichnis (muss in Root, nicht in Unterordner). Zeichenkodierung: robots.txt sollte als UTF-8 ohne BOM gespeichert werden. Zeilenumbrüche: Unix-Zeilenumbrüche (LF) sind universell kompatibel.

Häufig gestellte Fragen

Was bedeutet 'Disallow: /' in der robots.txt?
Disallow: / sperrt den gesamten Website-Inhalt für den angegebenen User-agent. User-agent: * Disallow: / würde alle Crawler komplett aussperren. Das ist ein kritischer Fehler, wenn nicht explizit gewollt. Auf Staging-Servern ist es jedoch eine sinnvolle Einstellung.
Müssen Groß- und Kleinschreibung in Pfaden beachtet werden?
Ja, Pfade in Disallow und Allow sind case-sensitive. Disallow: /Admin/ sperrt nicht /admin/ (kleingeschrieben). Auf Servern mit case-insensitiven Dateisystemen (Windows) kann das irreführend sein. Im Zweifelsfall beide Varianten angeben.
Wie schnell liest Google meine aktualisierte robots.txt?
Google cached robots.txt-Dateien für bis zu 24 Stunden. Nach einer Änderung dauert es bis zu einem Tag, bis Googlebot die aktualisierte Version verwendet. In der Google Search Console kann man über 'Abrufen als Google' eine sofortige Aktualisierung anfordern.