Anleitung zum Schreiben und Einreichen einer robots.txt-Datei

Mit einer robots.txt-Datei kannst du steuern, auf welche Dateien Crawler auf deiner Website zugreifen können.

Eine robots.txt-Datei ist eine Datei im Stammverzeichnis deiner Website. Im Fall der Website www.example.com befindet sich die robots.txt-Datei also im Dateipfad www.example.com/robots.txt. robots.txt ist eine Nur-Text-Datei, die dem Robots Exclusion Standard entspricht. Sie besteht aus einer oder mehreren Regeln. Jede Regel blockiert oder erlaubt allen Crawlern oder einem bestimmten Crawler den Zugriff auf einen angegebenen Dateipfad in der Domain oder Subdomain, auf der die robots.txt-Datei gehostet wird. Wenn du in deiner robots.txt-Datei nichts anderes angibst, wird davon ausgegangen, dass alle Dateien gecrawlt werden dürfen.

Das folgende Beispiel zeigt eine einfache robots.txt-Datei mit zwei Regeln:

User-agent: Googlebot
Disallow: /nogooglebot/

User-agent: *
Allow: /

Sitemap: https://www.example.com/sitemap.xml

Die Regeln besagen sinngemäß:

  1. Der User-Agent namens „Googlebot“ darf keine URLs crawlen, die mit https://example.com/nogooglebot/ beginnen.
  2. Alle anderen User-Agents dürfen die gesamte Website crawlen. Diese zweite Regel könnte weggelassen werden und das Ergebnis wäre das gleiche. Standardmäßig dürfen User-Agents die gesamte Website crawlen.
  3. Die XML-Sitemap-Datei der Website befindet sich unter https://www.example.com/sitemap.xml.

Weitere Beispiele findest du im Abschnitt Syntax.

Grundlegende Richtlinien zum Erstellen einer robots.txt-Datei

Das Erstellen einer allgemein zugänglichen und nützlichen robots.txt-Datei umfasst vier Schritte:

  1. Eine Datei mit dem Namen „robots.txt“ erstellen
  2. Der robots.txt-Datei Regeln hinzufügen
  3. Die robots.txt-Datei in das Stammverzeichnis deiner Website hochladen
  4. Die robots.txt-Datei testen

robots.txt-Datei erstellen

Du kannst robots.txt-Dateien mit fast allen Texteditoren erstellen. Gängige Programme zur Erstellung gültiger robots.txt-Dateien sind beispielsweise Editor, TextEdit, vi oder Emacs. Verwende kein Textverarbeitungsprogramm, denn dort werden Dateien häufig in einem eigenen Format abgespeichert und es können unerwartete Zeichen hinzugefügt werden, beispielsweise typografische Anführungszeichen. Dies kann zu Problemen beim Crawling führen. Wenn du beim Speichern der Datei gefragt wirst, welche Codierung verwendet werden soll, wähle die UTF-8-Codierung.

Regeln für Format und Speicherort:

  • Die Datei muss den Namen „robots.txt“ haben.
  • Die Website darf nur genau eine robots.txt-Datei enthalten.
  • Die robots.txt-Datei muss sich im Stammverzeichnis des Websitehosts befinden, für den sie eingerichtet wird. Wenn du zum Beispiel das Crawling für alle URLs unter https://www.example.com/ regeln möchtest, sollte sich die robots.txt-Datei im Verzeichnis https://www.example.com/robots.txt befinden. Sie darf nicht in einem Unterverzeichnis platziert werden (z. B. in https://example.com/pages/robots.txt). Falls du dir nicht sicher bist, wie du auf das Stammverzeichnis deiner Website zugreifen kannst, oder eine Erlaubnis dazu benötigst, wende dich an deinen Webhostinganbieter. Solltest du nicht auf das Stammverzeichnis deiner Website zugreifen können, kannst du eine alternative Blockierungsmethode wie meta-Tags verwenden.
  • Eine robots.txt-Datei kann unter einer Subdomain (z. B. https://site.example.com/robots.txt) oder unter nicht standardmäßigen Ports (z. B. https://example.com:8181/robots.txt) veröffentlicht werden.
  • Eine robots.txt-Datei gilt nur für Pfade innerhalb des Protokolls, des Hosts und des Ports, unter dem sie veröffentlicht wurde. Die Regeln in https://example.com/robots.txt gelten also nur für Dateien unter https://example.com/, nicht für Subdomains wie https://m.example.com/ oder andere Protokolle wie http://example.com/.
  • Eine robots.txt-Datei muss eine UTF-8-codierte Textdatei sein (was ASCII einschließt). Es kann sein, dass Google Zeichen, die nicht zum UTF-8-Bereich gehören, ignoriert, sodass die robots.txt-Regeln nicht greifen würden.

Anleitung zum Schreiben von robots.txt-Regeln

Regeln sind Anweisungen für Crawler, die festlegen, welche Teile deiner Website gecrawlt werden dürfen. Beachte beim Hinzufügen von Regeln zu deiner robots.txt-Datei bitte die folgenden Regeln:

  • Eine robots.txt-Datei besteht aus einer oder mehreren Gruppen (Regelsatz).
  • Jede Gruppe besteht aus mehreren Regeln (auch als Anweisungen bezeichnet), und zwar mit einer Regel pro Zeile. Jede Gruppe beginnt mit einer User-agent-Zeile, die angibt, für welchen Crawler die Gruppe gelten soll (Ziel).
  • Eine Gruppe enthält die Informationen,
    • Wofür die Gruppe gilt (User-Agent)
    • Auf welche Verzeichnisse oder Dateien der User-Agent zugreifen darf
    • Auf welche Verzeichnisse oder Dateien der User-Agent nicht zugreifen darf
  • Crawler verarbeiten Gruppen von oben nach unten. Ein User-Agent kann nur jeweils einen Regelsatz anwenden. Er wendet die spezifischste Gruppe an, die auf diesen User-Agent anwendbar ist und zuerst in der Datei erscheint. Wenn es mehrere Gruppen für denselben User-Agent gibt, werden die Gruppen vor der Verarbeitung in einer einzelnen Gruppe kombiniert.
  • Standardmäßig wird davon ausgegangen, dass ein User-Agent alle Seiten und Verzeichnisse crawlen darf, die nicht durch eine disallow-Regel blockiert sind.
  • Bei Regeln wird die Groß- und Kleinschreibung beachtet. Beispielsweise gilt disallow: /file.asp für https://www.example.com/file.asp, aber nicht für https://www.example.com/FILE.asp.
  • Mit dem Zeichen # wird der Beginn eines Kommentars gekennzeichnet. Kommentare werden während der Verarbeitung ignoriert.

Die Google-Crawler unterstützen die folgenden Regeln in robots.txt-Dateien:

  • user-agent: [Erforderlich, einer oder mehrere pro Gruppe] Die Regel gibt den Namen des automatischen Clients (Suchmaschinen-Crawler) an, für den die Regel gilt. Das ist die erste Zeile für jede Regelgruppe. Die Namen der User-Agents von Google sind in der Liste der Google-Crawler (User-Agents) aufgeführt. Wenn ein Sternchen (*) verwendet wird, gilt die Regel für alle Crawler. Ausgenommen davon sind die verschiedenen AdsBot-Crawler, die ausdrücklich benannt werden müssen. Beispiel:
    # Example 1: Block only Googlebot
    User-agent: Googlebot
    Disallow: /
    
    # Example 2: Block Googlebot and Adsbot
    User-agent: Googlebot
    User-agent: AdsBot-Google
    Disallow: /
    
    # Example 3: Block all crawlers except AdsBot (AdsBot crawlers must be named explicitly)
    User-agent: *
    Disallow: /
  • disallow: [pro Regel muss es mindestens einen disallow- oder allow-Eintrag geben]: Gibt das Verzeichnis oder die Seite unter der Stammdomain an, die der User-Agent nicht crawlen soll. Wenn sich die Regel auf eine Seite bezieht, muss der vollständige Seitenname verwendet werden, so wie er im Browser angezeigt wird. Er muss mit dem Zeichen / beginnen und muss, sofern er sich auf ein Verzeichnis bezieht, mit dem Zeichen / enden.
  • allow: [pro Regel muss es mindestens einen disallow- oder allow-Eintrag geben]: Gibt das Verzeichnis oder die Seite unter der Stammdomain an, die vom zuvor genannten User-Agent gecrawlt werden darf. Eine solche Regel setzt etwaige disallow-Regeln außer Kraft und kann verwendet werden, um das Crawling eines Unterverzeichnisses oder einer Seite in einem eigentlich ausgeschlossenen Verzeichnis zu erlauben. Wenn du eine einzelne Seite zulassen möchtest, gib den vollständigen Seitennamen an, wie er im Browser angezeigt wird. Er muss mit dem Zeichen / beginnen und muss, sofern er sich auf ein Verzeichnis bezieht, mit dem Zeichen / enden.
  • sitemap: [Optional, null oder mehr Einträge pro Datei]: Gibt den Speicherort einer Sitemap für diese Website an. Die Sitemap-URL muss eine vollständig qualifizierte URL sein. Google geht nicht von Varianten aus und prüft diese auch nicht (z. B. http- bzw. https-Varianten oder Varianten mit bzw. ohne „www“). Sitemaps sind eine praktische Möglichkeit, Google zu zeigen, welche Inhalte gecrawlt werden sollen, im Unterschied zu den „Allow“-/„Disallow“-Anweisungen, mit denen dem Googlebot mitgeteilt wird, welche Inhalte gecrawlt werden dürfen oder eben nicht gecrawlt werden dürfen. Weitere Informationen über Sitemaps Beispiel:
    Sitemap: https://example.com/sitemap.xml
    Sitemap: https://www.example.com/sitemap.xml

Bei allen Regeln mit Ausnahme von sitemap wird für Präfixe, Suffixe oder ganze Strings bei Pfaden der Platzhalter * unterstützt.

Zeilen, die mit keiner dieser Regeln übereinstimmen, werden ignoriert.

Eine vollständige Beschreibung der einzelnen Regeln findest du auf unserer Seite Wie Google die robots.txt-Spezifikation interpretiert.

robots.txt-Datei hochladen

Nachdem du die robots.txt-Datei auf deinem Computer gespeichert hast, kannst du sie für Suchmaschinen-Crawler verfügbar machen. Hierfür gibt es kein Tool, da die Vorgehensweise zum Hochladen der robots.txt-Datei auf deine Website von der jeweils konkreten Website- und Serverarchitektur abhängt. Wende dich an deinen Hosting-Anbieter oder suche in der entsprechenden Dokumentation. Du kannst zum Beispiel nach „Dateien hochladen Infomaniak“ suchen.

Teste nach dem Hochladen der robots.txt-Datei, ob sie öffentlich zugänglich ist und ob Google sie parsen kann.

robots.txt-Markup testen

Wenn du testen möchtest, ob die hochgeladene robots.txt-Datei öffentlich zugänglich ist, öffne ein Fenster für das private Surfen (die Bezeichnung dieser Funktion ist von Browser zu Browser verschieden) und rufe den Speicherort der robots.txt-Datei auf. Beispiel: https://example.com/robots.txt. Wenn du den Inhalt deiner robots.txt-Datei siehst, kannst du das Markup testen.

Google bietet zwei Optionen zum Beheben von Problemen mit dem robots.txt-Markup:

  1. Den robots.txt-Bericht in der Search Console. Diesen Bericht kannst du nur für robots.txt-Dateien verwenden, die bereits auf deiner Website zugänglich sind.
  2. Entwicklern empfehlen wir die Open-Source-Bibliothek „robots.txt“ von Google, die auch in der Google Suche verwendet wird. Mit diesem Tool kannst du robots.txt-Dateien lokal auf deinem Computer testen.

robots.txt-Datei an Google senden

Nachdem du deine robots.txt-Datei hochgeladen und getestet hast, finden und verwenden die Google-Crawler sie automatisch. Du brauchst nichts weiter zu tun. Wie du vorgehen musst, wenn du deine robots.txt-Datei bearbeitet hast und die im Google-Cache gespeicherte Version schnellstmöglich aktualisieren möchtest, erfährst du unter Aktualisierte robots.txt-Datei bei Google einreichen.

Nützliche robots.txt-Regeln

Hier einige nützliche allgemeine robots.txt-Regeln:

Nützliche Regeln
Crawling der gesamten Website verhindern

Beachte, dass in manchen Fällen URLs der Website indexiert werden können, obwohl sie nicht gecrawlt wurden.

User-agent: *
Disallow: /
Crawling eines Verzeichnisses und seines Inhalts verhindern

Wenn du das Crawling eines ganzen Verzeichnisses verhindern möchtest, hänge einen Schrägstrich an den Namen des Verzeichnisses an.

User-agent: *
Disallow: /calendar/
Disallow: /junk/
Disallow: /books/fiction/contemporary/
Einem einzelnen Crawler Zugriff gewähren

Nur googlebot-news darf die gesamte Website crawlen.

User-agent: Googlebot-news
Allow: /

User-agent: *
Disallow: /
Allen Crawlern außer einem Zugriff gewähren

Unnecessarybot darf die Website nicht crawlen, alle anderen Bots dürfen es.

User-agent: Unnecessarybot
Disallow: /

User-agent: *
Allow: /

Das Crawling einer einzelnen Seite verhindern

Du kannst beispielsweise angeben, dass die Seite useless_file.html unter https://example.com/useless_file.html und other_useless_file.html im Verzeichnis junk nicht zulässig ist.

User-agent: *
Disallow: /useless_file.html
Disallow: /junk/other_useless_file.html

Das Crawling der gesamten Website mit Ausnahme eines Unterverzeichnisses verhindern

Crawler dürfen nur auf das public-Unterverzeichnis zugreifen.

User-agent: *
Disallow: /
Allow: /public/

Ein bestimmtes Bild aus Google Bilder fernhalten (blockieren)

Du kannst beispielsweise das Bild dogs.jpg blockieren.

User-agent: Googlebot-Image
Disallow: /images/dogs.jpg

Alle Bilder auf deiner Website aus Google Bilder fernhalten (blockieren)

Google kann Bilder und Videos nur indexieren, wenn sie gecrawlt wurden.

User-agent: Googlebot-Image
Disallow: /

Das Crawling von Dateien eines bestimmten Dateityps verhindern

Du kannst beispielsweise das Crawling aller .gif-Dateien unterbinden.

User-agent: Googlebot
Disallow: /*.gif$

Das Crawling der gesamten Website verhindern, aber Mediapartners-Google zulassen

Deine Seiten erscheinen dann nicht in den Suchergebnissen, werden aber weiterhin vom Web-Crawler Mediapartners-Google analysiert, um zu entscheiden, welche Anzeigen ausgeliefert werden sollen.

User-agent: *
Disallow: /

User-agent: Mediapartners-Google
Allow: /
Platzhalter * und $ verwenden, um URLs abzudecken, die mit einem bestimmten String enden

Beispielsweise kannst du alle .xls-Dateien ausschließen.

User-agent: Googlebot
Disallow: /*.xls$