WordPress: Robots.txt – Wie man sie effektiv nutzt!

Kleine Roboter durchforsten das Internet nach neuen Informationen, sammeln dabei eifrig Daten und schaffen so ein kleines Profil aller Seiten, die sich im virtuellen Raum ansammeln.

Diese sind als Crawler bekannt und irgendwie ist die Vorstellung auch ganz schön gruselig. Dabei wühlen sie sich durch unzählige Verzeichnisse, ungeordnete Strukturen und sind immer auf der Suche nach frischen Inhalten für das eigene Portfolio.

Mit der robots.txt können wir nun aber festlegen, was das Suchmaschinenhelferlein so alles mitnehmen darf, welche Seiten dabei tabu sind und was überhaupt auf unserem Blog für alles und jeden zugänglich erscheint.

Also, werfen wir einen Blick auf die robots.txt und was wir mit dieser Textdatei so alles anstellen können…

Die robots.txt – Was ist das?

Die robots.txtDie robots.txt ( ~Robots Exclusion Standard) ist eine Textdatei, die im Root-Verzeichnis eines Servers durch den Betreiber selbst angelegt wird und Suchmaschinen sagt, welche Inhalte wie behandelt werden sollen.

Das Prinzip wurde 1994 von einer unabhängigen Gruppierung entwickelt, gilt allerdings nicht als verbindlich, auch wenn es mittlerweile als Quasi-Standard angenommen werden kann.

Sie ist das erste, was Crawler von einer beliebigen Homepage oder einem Blogs wahrnehmen und hält Informationen für diesen bereit.

Hier sind allgemeine Informationen abgelegt, die genau beschreiben, was der kleine Crawler darf und was eben nicht. Es handelt sich also um eine Textdatei, die wir für Suchmaschinen auf unserem Server hinterlegt haben.

Man könnte sich das Ganze wie ein Warnschild vor der Eingangstür eines Einfamilienhauses vorstellen. Kommt nun ein Passant vorbei, findet er dort entweder die Erlaubnis zum Betreten, ein unfreundliches Verbotsschild und manchmal den Verweis, dass nur bestimmte Besucher erlaubt sind.

Das macht unsere robots.txt und kann dabei ungemein hilfreich sein. Denn letzten Endes legen wir in dieser Datei fest, was Suchmaschinen dürfenhereinkommen, weitergehen oder sich selektiv willkommen fühlen.

Heißt also, dass sich niemand daran halten muss, aber nahezu jeder tut. Irgendwie recht ähnlich mit dem Hinweisschild auf unserem Privatgrundstück, oder?

Dabei gilt, dass Crawler unsere robots.txt von oben nach unten lesen und dann verschwinden, wenn sie sich selbst finden oder eben beginnen, unsere Seiten zu indexieren. Zwar kann es vorkommen, dass unser Hinweis ignoriert wird, aber normalerweise sollte es klappen.

Da Crwaler chronologisch lesen, ist es sinnvoll, anfangs die Regeln für bestimmte Robots aufzustellen und sich am Ende den Bestimmungen für alle zu widmen. Aber dazu später mehr.

Wie erstelle ich eine robots.txt?

Dafür braucht es eigentlich nur einen Texteditor, wie etwa Notepad, ein paar ruhige Sekunden und schon kann es losgehen.

Dafür erstellen wir eine Datei, die wir robots.txt nennen und laden sie via FTP in das Stammverzeichnis unseres Servers. Was diese Textdatei beinhalten sollte, sehen wir im weiteren Verlauf.

Der Aufbau ist recht simpel und besteht grundsätzlich aus zwei Zeilen, die mit einem Doppelpunkt getrennt sind. Dabei ist es wichtig, dass die Datei im Stammverzeichnis unseres Servers abgelegt wird. Also kein Unterordner, kein Schnörkel, einfach direkt und lesbar:

# http://dein-blog.de/robots.txt

User-agent: *
Disallow: 

Das obige Beispiel zeigt lediglich den Aufbau der robots.txt und sollte nich frei übernommen werden. Dafür braucht es noch ein paar kleine Eingriffe. Dennoch würde dieses Beispiel ausreichen, um eine fehlerfreie Indexierung zu ermöglichen.

Dazu aber später mehr. Erst möchte ich auf die Struktur der robots.txt blicken.

Der grundlegende Aufbau der robots.txt

Die robots.txt besteht grundsätzlich aus dem Baustein User-agent und dem Befehl Disallow. Ersteres lässt uns einen Crawler zielgerichtet ansprechen, wobei Disallow klar vorgibt, was dieser nun darf oder eben nicht darf.

Außerdem gelten die folgenden Kürzel:

# – Alles, was hinter der Raute steht, ist einem Crawler grundsätzlich egal. Hierbei werden die nachfolgenden Elemente als Kommentar interpretiert.

* – Wenn man alle Crawler ansprechen möchte, kann man ein sogenanntes Wildchar verwenden. In diesem fall *, was dafür sorgt, dass nicht alle Möglichkeiten durchgegangen werden müssen, pauschal festgelegt wird.

Hinweis: Groß- und Kleinschreibung ist bei Disallow egal. Ob ein Befehl nun DiSalLow oder disallow geschrieben wird, ist also Nebensache.

Beispiel einer minimalistischen robots.txt:

# robots.txt for http://www.beispiel.de/
# Zugriff auf alle Dateien erlauben
User-agent: *
Disallow:

Diese robots.txt würde es jedem Crawler erlauben, alle Seiten, Unterseiten und Dateien eines Blogs zu indexieren. Man könnte sagen, dass das die minimalsten Anforderungen an eine robots.txt sein müssten, um den Funktionsumfang zu gewährleisten.

Doch nicht das Erlauben ist wichtig, sondern vielmehr das gekonnte Ausschließen bestimmter Bestandteile eines Blogs.

Warum sollte ich Seiten ausschließen?

Vielleicht sollte man vorab die Frage beantworten, warum es überhaupt Sinn macht, bestimmte Seiten aus dem Suchmaschinen-Index zu pfeffern. Denn wenn wir eines wollen, dann ist es doch Traffic – Warum sollten wir das also tun?

Nun, dazu ein paar Überlegungen.

1. Nicht alle sollen es sehen

Ein Grund kann natürlich sein, dass wir unseren Blog nicht für alle und jeden öffnen wollen. Beispielsweise soll er sich nur an Familienmitglieder und Freunde richten und nicht für Spammer und wahllose Besucher offen stehen.

Ich weiß, der Gedanke ist in der SEO-Glücksritter- und OnlineMarketing-Branche fast undenkbar, aber manchmal wird ein Blog ja auch für das verwendet, als was es ursprünglich gedacht war: Als virtuelles Tagebuch, wo die Öffentlichkeit nicht unbedingt ein fester Bestandteil sein muss :)

2. Das Impressum

Ich selbst arbeite im Internet. Manchmal erstelle ich Texte für Firmen, auf anderen Seiten biete ich Produkte an und außerdem bin ich Mitherausgeber eines Literaturmagazins.

Die Folge ist, dass mein Name mitunter via Google gesucht wird. Nicht alle paar Sekunden, aber es kommt mitunter vor. Das passiert meistens dann, wenn jemand Informationen über mich, meine Arbeit oder auch die Vergangenheit einholen möchte.

Das macht jeder und ich habe damit auch kein Problem. Blöd ist es nur dann, wenn ich nebenher noch ein paar Projekte betreibe, die nicht unbedingt mein öffentliches Profil widerspiegeln sollen. Denken wir an die berüchtigten Geld verdienen im Internet – Marketer, Sportwetten oder auch das älteste Gewerbe der Welt.

Es kann also sinnvoll sein, das Impressum vor einer Indexierung zu schützen und nicht schon auf den ersten fünf Metern einer beliebigen Anfrage aufzutauchen.

3. Künstlicher Traffic

Manche Crawler haben eigentlich keinen wirklichen Mehwert und vermiesen uns lediglich die Statistik. Unsere Auswertungstools zeigen folglich an, dass wir Besucher haben, auch wenn diese in Wirklichkeit bloß Bots sind und daher maschinengesteuert und nicht real.

Es kann also Sinn machen, pauschal ein paar Crawler auszuschließen, um diesbezüglich bessere oder passendere Ergebnisse zu bekommen. Auch wenn viele Statistik-Tools mit der Zeit „gelernt“ haben und Spam-Spider oder Traffic-Crawler schon vorab ausschließen und ignorieren.

Wie schließe ich eine Seite aus? – robots.txt

Das funktioniert mittels des Befehls disallow. So können wir einerseits den Zugriff auf ganze Strukturen untersagen, aber gleichermaßen nur einzelne Seiten ausschließen. Wollen wir beispielsweise unser Impressum von einer Indexierung befreien, sieht das Ganze so aus:

User-agent: *
Disallow: /impressum/

Oder eben die entsprechende Struktur der eigenen Seite. Der Code würde in diesem Fall bewirken, dass alle (*) Crawler keinen Zugriff auf die Seite Impressum haben, die ich unter selbstaendig-online-verdienen.de/impressum/ abgelegt habe.

Möchten wir allerdings nur bestimmte Crawler aussperren, setzen wir deren Bezeichnung an die Stelle des Sterns.

Hinweis: Wichtig ist hierbei der Slash selbst. Macht man beim Setzen einen Fehler, kann das ungewollte Konsequenzen nach sich ziehen.

Dabei gilt, dass ein / bis zum nächsten / gilt. Schließe ich beispielsweise /geld aus, würden alle Unterseiten, die mit diesem Kürzel beginnen, ausgeschlossen werden. Also auch /geld-verdienen/. Möchten wir hingegen nur das Verzeichnis geld von der Indexierung ausschließen, müssen wir einen abschließenden Slash setzen. Also: /geld/

Wie schütze ich meine gesamte Seite vor einer Indexierung?

Wer nun allerdings alle Crawler ausschließen möchte, muss natürlich nicht jede Seite ausschließen. Das wäre mit einem enormen Zeitaufwand verbunden und ist auch gar nicht notwendig.

Dafür legen wir in unserer robots.txt einfach das fest:

User-agent: *
Disallow: /

Hierbei bewirkt der Slash, dass eben alles, was nach ihm folgt, nicht angezeigt werden soll. Ob das nun Sinn macht, muss natürlich jeder Blogger und Seitenbetreiber für sich entscheiden. Das Gegenteil würde übrigens das Weglassen des Slashs bewirken und somit alle Seiten zur Indexierung freigeben.

User-agent: *
Disallow:

Die robots.txt prüfen

Nachdem wir nun eine robots.txt angelegt und festgelegt haben, wer denn nun was auf unserem Blog sehen darf, sollten wir diese noch auf die richtige Syntax prüfen.

1. Die robots.txt muss kleingeschrieben sein

Die Dateibezeichnung muss kleingeschrieben sein, um fehlerfrei erkannt zu werden. Das heißt also, dass ROBOTS.TXT oder auch ROBOTs.txt nicht fehlerfrei interpretiert werden können. Wenn das, beispielsweise durch die Benennung unter DOS nicht möglich sein sollte, müssen wir die Datei händisch auf unserem Server umbenennen.

2. Einen Texteditor benutzen

bei der Erstellung der robots.txt sollten wir wirklich einen texteditor nutzen. Unter Windows wäre das Notepade, unter Linux beispielsweis vi. Alles andere würde keinen fehlerfreien HTML-Code genrieren und lediglich Quatsch ausliefern.

3. Die robots.txt prüfen

Ob unsere robots.txt wirklich fehlerfrei und ohne Mängel erstellt wurde, lässt sich natürlich auch mittels Tool überprüfen. Hierfür empfehle ich den kostenlosen Robots.txt Checker.

Hierbei müssen wir allerdings darauf achten, auch wirklich die URL der eigentlichen robots.txt anzugeben. In meinem Fall also nicht nur selbstaendig-online-verdienen.de, sondern wirklich selbstaendig-online-verdienen.de/robots.txt 

Das kleine Tool überprüft nun unsere Datei nach logischen Fehlern und Mängeln in der Syntax – läuft das Ganze fehlerfrei durch, können wir uns zurücklehnen. Denn wir haben es vollbracht: Die robots.txt ist fertig!

(4. Verweis auf die Sitemap)

Das gilt nur, wenn wir eine Sitemap für unsere Seite oder den eigenen Blog angelegt habe. Eine Sitemap ist gewissermaßen das Inhaltsverzeichnis unserer Homepage und hilft Suchmaschinen dabei, sich besser zurechtzufinden und die Struktur besser zu erfassen. Wer also eine Sitemap angelegt hat, sollte auf diese in der robots.txt verweisen. Artikel: XML Sitemap erstellen

Das sieht in der robot.txt dann folgendermaßen aus und wird einfach an das untere Ende gehängt:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/

Sitemap: http://geld-im-netz.de/sitemap.xml.gz

Die robots-txt – Fazit

Es gibt noch eine handvoll Befehle, die wir verwenden können. Diese habe ich in diesem Artikel nicht aufgeführt. So können wir beispielsweise festlegen, dass PDF-Dateien oder andere Endungen von einer Indexierung ausgeschlossen werden oder bestimmen, dass nur alle paar Minuten ein Crawler unsere Seiten durchforsten darf.

Auf diese habe ich verzichtet, da sie den Rahmen einfach sprengen würden. Wer sie allerdings braucht, wird bei Wikipedia fündig: http://de.wikipedia.org/wiki/Robots_Exclusion_Standard

Wer einen Blog unter WordPress betreibt, muss sich häufig gar nicht um die robots.txt scheren. Denn schon bei der Installation werden wir gefragt, ob unsere Seiten öffentlich oder verschlossen sein sollen. In der Regel sollte das bewirken, dass alles von Anfang an indexiert wird.

Alles andere sind lediglich Schönheitsoperationen beziehungsweise Kleinigkeiten zur genaueren Bestimmung. Außerdem ist es natürlich möglich, die Festlegung, die wir anfangs trafen, in der robots.txt wieder aufzuheben.

Wenn Du allerdings noch weitere Hinweise zur robots.txt hast oder etwas ergänzen möchtest, freue ich mich über Deinen Kommentar :)

3 Meinungen

  1. Daniel04-10-2012

    Ein Impressum von Google auszugrenzen hat schon manchmal einen Sinn allerdings glaube ich im Zeitalter des Panda-updates, dass es evtl. nicht so Klug ist, andere Seiten aus dem Index auszuschließen. Denn so könnte eine Website überoptimiert aussehen und Google straft die Website somit ab. Gerade wenn ich zum Beispiel WordPress anschaue. Sollte man hier wirklich alle unwichtigen Unterseiten (Kategorieseiten/Pageseiten/…) die evtl. DC produzieren mit einer robots.txt ausschließen? Oder ist Google schon so fit, dass es WordPress erkennt?

  2. vissev07-26-2012

    sehr guter artikel zu robots.txt
    wen man eine eigene robots.txt erstellt für wordpress, was ist dan mit der robots.txt, die wordpress selber erstellt hat?
    muss man hierbei noch was machen? oder ist das überflüssig?

  3. vissev07-26-2012

    ich bins nochmal…

    ————————-

    User-agent: *
    Disallow: /wp-admin/
    Disallow: /wp-includes/

    Sitemap: http://geld-im-netz.de/sitemap.xml.gz

    ——————–

    sollte man hier mit „.xml.gz“ oder „.xml“
    ich habe etwas rumgegooglet :) einige machen das mit „.xml“