Sie sind hier: edv-beratung-thomas.de / robots.txt: Synthax und Beispiele


Suchmaschinen-Optimierung Schritt für Schritt: Praxis-Tipps (nicht nur) für Einsteiger

robots.txt: Verzeichnisse oder Seiten für Robots sperren: Synthax und Beispiele:

Mit einer einfachen Text-Datei namens robots.txt im Stammverzeichnis Ihres Servers können Sie festlegen, welche Verzeichnisse oder Seiten Sie für alle oder bestimmte Suchmaschinen-Crawler sperren wollen. robots.txt-Dateien können auch auf Subdomains eingesetzt werden.

Synthax der robots.txt:

Die Synthax der robots.txt ist einfach:

Beispiele für robots.txt: Verzeichnisse / Seiten für Robots sperren oder zulassen:

  1. # für alle Robots alles sperren
    User-agent: *
    Disallow: /
        
    beachten Sie den Sonderfall: User-agent: * nur einer von mehreren Datensätzen (eigener Abschnitt)

  2. # für alle Robots nichts sperren
    User-agent: *
    Disallow:
        
    eine leere oder nicht vorhandene robots.txt erfüllt den gleichen Zweck

  3. # für Yahoo Robot alles sperren
    User-agent: slurp
    Disallow: /
        
  4. # für Bing Robot nichts sperren
    User-agent: bingbot
    Disallow:
        
  5. # für alle Robots die beiden angegebenen Verzeichnisse sperren
    User-agent: *
    Disallow: /geheim/
    Disallow: /verboten/
    # aber diese eine Seite doch für Robots zulassen
    Allow: /geheim/nicht-ganz-so-geheim.html
        
  6. # für alle Robots drei bestimmte Seiten im Stammverzeichnis sperren
    User-agent: *
    Disallow: /geheim.html
    Disallow: /streng-geheim.html
    Disallow: /aeusserst-geheim.html
        
  7. # für Yahoo Robot alles sperren
    User-agent: slurp
    Disallow: /
    
    # für Bing Robot nichts sperren
    User-agent: bingbot
    Disallow:
        
  8. # für Bing und Exalead Robots alles sperren
    User-agent: bingbot
    User-agent: ExaBot
    Disallow: /
        
  9. # für Googlebot alle Bilder und PDF-Dateien sperren
    User-agent: Googlebot
    Disallow: /*.gif$
    Disallow: /*.jpg$
    Disallow: /*.pdf$
        
    Beachten Sie, daß das Jokerzeichen * in Dateinamen nicht zum Standard gehört. Diese Anweisungen werden nur von Googlebot, nicht von anderen Robots erkannt.

Sonderfall: "User-agent: * " ist nur einer von mehreren Datensätzen:

Ein Webmaster beabsichtigt, für Googlebot, bingbot und slurp sein Verzeichnis geheim zu sperren, allen anderen Robots soll der Zugriff auf die vollständige Website verboten werden. Hierzu erstellt er folgende robots.txt:

User-agent: Googlebot
User-agent: bingbot
User-agent: slurp
Disallow: /geheim/

User-agent: *
Disallow: /

Wenn (wie in diesem Beispiel) die robots.txt mehrere Datensätze enthält, von denen ein Datensatz mit User-agent: * eingeleitet wird, überschreibt dieser Datensatz nicht die anderen Datensätze, sondern wirkt ergänzend: Die in diesem Datensatz festgelegten Regeln gelten nur für jene Suchmaschinen-Crawler, die in den anderen Datensätzen nicht explizit erwähnt werden. In welcher Reihenfolge die Datensätze angeordnet sind, ist belanglos: der mit User-agent: * eingeleitete Datensatz könnte also auch an erster Stelle stehen.

So sieht es zumindest der ursprüngliche robots.txt-Standard (dort im Absatz Format) aus dem Jahr 1994 vor. Und auch Google richtet sich danach, siehe Google Developers: Robots.txt Specifications, Abschnitt Order of precedence for user-agents (leider gibt's die Seite noch nicht auf Deutsch, obwohl der Verfasser Johannes Müller ein Schweizer ist).

Aber niemand kann garantieren, daß wirklich die Crawler aller Suchmaschinen diese ursprüngliche Regel beachten, so daß es im Zweifelsfall sicherlich die weniger riskante Lösung wäre, alle Robots, für die Regeln festgelegt werden sollen, in einem Datensatz explizit zu erwähnen.

Client-Identifikationen von Such-Robots:

Einige aktuelle Robots-Bezeichnungen, also die Angaben, die Sie in der User-agent: - Zeile eintragen können, sind Googlebot (Google), slurp (Yahoo), bingbot (Bing), ExaBot (Exalead) und ia_archiver ("Wayback Machine" Archive.org). Weitere Robots-Bezeichnungen finden Sie unter Client-Identifikationen von Such-Robots.

Beachten Sie, daß Microsofts Suchmaschine Bing (vormals Live.com, vormals MSN) im Jahr 2011 damit begonnen hat, ihre MSNbot aus dem Verkehr zu ziehen und durch bingbot zu ersetzen, und passen Sie Ihre robots.txt ggf. entsprechend an.

robots.txt: Pfad zur XML-Sitemap eintragen:

Wenn Sie eine XML-Sitemap verwenden, können Sie in Ihrer Datei robots.txt den absoluten Pfad zur Sitemap als eigenen Datensatz (und deshalb von anderen Datensätzen durch eine Leerzeile getrennt) eintragen. Das einleitende Schlüsselwort Sitemap kann mit dem Großbuchstaben S oder dem Kleinbuchstaben s beginnen. Sie können auch mehrere Sitemap-Dateien in die robots.txt eintragen.

Beispiel:
Sitemap: http://www.ihr-name.de/sitemap.xml

Sinn und Zweck der robots.txt:

Im Normalfall sind Sie froh, wenn möglichst viele Suchmaschinen möglichst viele Ihrer Seiten erfassen. Von daher bräuchten Sie überhaupt keine Datei robots.txt. Es gibt aber bestimmte Ausnahmen, in denen es sinnvoll erscheint, Suchmaschinen-Crawler auszuschließen: Angaben in der robots.txt wirken grundsätzlich erst ab dem Zeitpunkt, zu dem sie dort eingetragen wurden, robots.txt-Einträge gelten also nicht rückwirkend: Mit "nachträglichen" Angaben in der robots.txt können bei Google & Co keine Daten gelöscht werden.

Seiten im Google-Index trotz Sperre in robots.txt?

Das kann vorkommen, wenn die in der robots.txt gesperrten Seiten (projekt-intern oder von außen) verlinkt sind, und wenn zugleich ein meta-tag robots mit dem Eintrag noindex im head dieser Seiten fehlt. Eine Sperre in der robots.txt verhindert nur den Besuch der Crawler, nicht die Aufnahme der hierdurch gesperrten Seiten in den Google-Index.

Wenn Sie sich bei Wikipedia über die robots.txt informieren wollen, beachten Sie, daß der Wikipedia-Artikel "Robots Exclusion Standard" immer noch Fehler enthält. So wird etwa nicht zwischen Zugriffsverbot und Indexierungsverbot unterschieden. In meinem persönlichen Blog habe ich vor kurzem den Wikipedia-Artikel analysiert.

Sie können übrigens den Inhalt eines ganzen Verzeichnisses von der Indexierung durch Google ausschließen, wenn Sie in dem betreffenden Verzeichnis eine Datei .htaccess mit diesem Inhalt erstellen:
<IfModule mod_headers.c>
  Header set X-Robots-Tag "noindex"
</IfModule>
    
Voraussetzungen sind, daß Ihr Server unter Apache läuft, und daß das Apache-Modul mod_headers bei Ihnen verfügbar ist.

Besonderes Szenario: Ihre Website wurde gehackt ...

Crawler-Fehler durch 302-Weiterleitung zur Telekom-Wartungsseite:

Wenn Sie T-Online- bzw. Telekom-Kunde sind und bemerken, daß Googlebot auf Ihre Seiten nicht zugreifen konnte, kann das daran liegen, daß die Telekom gelegentlich von Ihrer Domain per Statuscode 302 zu einer Telekom-eigenen Wartungsseite weiterleitet, und die dieser Wartungsseite zugehörige robots.txt dann die Crawler-Zugriffe auf Ihre Seiten sperrt.

Der rosa Riese scheint diesen üblen Trick gerne dann anzuwenden, wenn seine unschuldigen Kunden ahnungslos im Bett liegen und friedlich schlafen.

Robots der "Wayback Machine" Archive.org aussperren:

Aus dem "Land der unbegrenzten Möglichkeiten" stammt die Wayback Machine: "Surf the web as it was": Wer sich über die Inhalte (Texte und Bilder) einer Website zu einem bestimmten Zeitpunkt der Vergangenheit (ab Januar 1996) informieren will, wird hier fündig. Was den einen bei berechtigten Nachforschungen hilft (etwa: Was stand zum Zeitpunkt der Bestellung vor vier Monaten in den AGB der Firma Gierig & Raffke?), verfluchen andere, die vor Jahren in jugendlichem Leichtsinn peinliche Texte über sich ins Netz geladen hatten und das inzwischen bitter bereuen.

Mit folgendem Eintrag in der robots.txt können Sie die Robots der "Wayback Machine" von Ihrer Website aussperren:
User-agent: ia_archiver
Disallow: /
Die Besonderheit des ia_archiver ist, daß er dann nicht nur (wie bei solchen Angaben üblich) die Website künftig nicht mehr ausforscht, sondern auch bereits in der Vergangenheit gespeicherte Versionen löscht.

   zur Übersicht: Suchmaschinenoptimierung Schritt für Schritt

   zurück zu: Sitemap zur besseren Erfassung durch Suchmaschinen erstellen

   weiter zu: doppelte Inhalte (duplicate content, DC) vermeiden:

Zur Startseite
Stand: 15.08.2015 nach oben ©2007-2024 Gösta Thomas