Was ein SEO über die robots.txt wissen sollte

Basiswissen

Bookmark and Share

robots.txt seoDie kleine Text-Datei “robots.txt” ist ein kleines Stück Technik, das man als SEO verstehen sollte. Denn sie steuert die Crawler der Suchmaschinen über die eigene Webseite. Oder, besser gesagt: In der robots.txt kann man die Suchmaschinen-Bots bitten, bestimmte Bereiche der Webseite in Ruhe zu lassen. Google jedenfalls hält sich dran.

Allerdings gibt es einige Details und Eigenheiten der robots.txt zu beachten.

Über die robots.txt allgemein

Wer sich in das der robots.txt zugrunde liegende Robots Exclusion Standard Protokoll einlesen möchte, findet auf der Wikipedia einige Infos. Ich werde mich hier auf die für SEOs wichtigen Regeln und Tipps beschränken. Und das geht ganz allgemein los:

  • Die robots.txt ist immer auf der obersten Verzeichnisebene zu finden, ihre URL lautet also immer: http://[www.domain.de]/robots.txt.
  • Die Angaben für Verzeichnisse und Dateien starten immer direkt hinter der Domain. Also immer mit einem Slash “/” und dann den Pfad.
  • Es gibt die Anweisungen “disallow” und “allow”. Da “allow” die Regel ist, muss diese in der Regel nicht verwendet werden. Außerdem kümmern sich nur die “Großen” Robots um dieses “allow”.
  • Groß- und Kleinschreibung spielt eine Rolle.
  • Ein Stern (*) ist ein Platzhalter. Wenn etwa alle Verzeichnisse die mit “privat” beginnen, gemeint sind, sieht das so aus: privat*  (Beispiel unten). Auch das können nicht alle Bots, und man darf nur bei den großen damit rechnen, dass das klappt.
  • Da auch Zeichen und damit auch der Punkt interpretiert werden, muss es möglich sein, dass das Ende einer Dateierweiterung markiert wird. Das erfolgt mit dem Dollarzeichen ($)  (Beispiel unten)
  • Mehrere Regeln werden von einer Leerzeile voneinander getrennt.

Es gibt auch viele Tipps und Tricks, wie man mit der robots.txt ungeliebte Bots sperrt. Crawler, die einen nerven, die die Performance der Seite fressen oder gar Inhalte klauen. Allerdings sorgt auch eine noch so lange Liste “böser” Bots in der robots.txt nicht für Ruhe auf dem Server. Denn wer Inhalte scrapt, wird sich kaum an eine Disallow-Anweisung in einer kleinen Text-Datei halten. Da sorgt dann nur ein Eintrag in der .htaccess für wirklich gesperrte Seiten.

Der Aufbau robots.txt

Ein Eintrag in der robots.txt besteht immer aus zwei Teilen. Zunächst wird angegeben, für welchen User Agent (Robot) die Anweisung gilt, danach wird die Anweisung gegeben:

User-agent: Googlebot
Disallow: /cms/

Das bedeutet: Der Webcrawler von Google sollte das Verzeichnis /cms/ nicht crawlen.

Sollten sich überhaupt kein Robot mit diesem Verzeichnis beschäftigen würde die Anweisung so lauten, der Stern steht als Platzhalter für alle Robots:

User-agent: *
Disallow: /cms/

Darf die gesamte Seite nicht gecrawlt werden (etwa auf einer Testinstallation vor einem Relaunch) würde die Anweisung so lauten. Der Schrägstrich bedeutet, dass kein Verzeichnis gecrawlt werden soll bzw. dass alle Verzeichnisse verboten sind:

User-agent: *
Disallow: /

Soll eine einzelne Seite oder ein einzelnes Bild nicht gecrawlt werden, wird der Eintrag in der robots.txt so aussehen:

User-agent: Googlebot
Disallow: /datei-name.html
Disallow: /images/bild.jpg

Spezielle Aufgaben in der robots.txt

Es geht ja häufig nicht darum, komplette Seiten aus dem Index zu hauen, sondern um feinere Aufgaben. Hierfür gibt es verschiedene Anweisungen für die verschiedenen Robots.

User-agent: Googlebot-Image
Disallow: /

Es können auch z.B. alle Bilder eines bestimmten Formats gesperrt werden:

User-agent: Googlebot-Image
Disallow: /*.jpg$

Eine Besonderheit ist das Schalten von AdWords-Anzeigen. Diese dürfen nur auf Seiten erscheinen, die gecrawlt werden können. Sollen sie aber trotzdem nicht in den organischen Index, muss man zwei Einträge machen. Einer dafür, dass die Seiten *nicht* gecrawlt werden – und danach eine Ausnahme für den AdWords-Crawler machen:

User-agent: Mediapartners-Google
Allow: /
User-agent: *
Disallow: /

Soll ein gesamtes Verzeichnis gesperrt, aber ein Teilverzeichnis darin erlaubt werden, würde die Anweisung so aussehen. Allerdings sollte das “Allgemeine” vor dem “Speziellen” stehen:

User-agent: *
Disallow: /shop/
Allow: /shop/magazin/

Man kann auch alle Seiten mit einem Parameter vor dem Crawlen sperren. Wobei hier gut abzuklären ist, ob bei diesen Seiten nicht der Canonical-Tag besser wäre. Beide Angaben würden sich gegenseitig stören. Wenn es aber passt, wäre diese Anweisung korrekt. Damit würden alle URLs mit einem Fragezeichen nicht gecrawlt werden.

User-Agent: Googlebot
Disallow: /*?

Mit einer speziellen Anweisung kann man die Lesegeschwindigkeit beeinflussen. Das funktioniert allerdings nur bei Yahoo! Slurp und msnbot. Im Beispiel darf nur alle 120 Sekunden eine Seite gelesen werden:

Crawl-delay: 120

Wichtig: Gibt man Anweisungen für spezielle Bots, müssen in diesem Bereich alle vorherigen, allgemeineren Anweisungen wiederholt werden.

Die wichtigsten Crawler / Bots

Crawler User-Agents
Googlebot für Websuche Googlebot
Googlebot für News Googlebot-News (den gibt es als Bot nicht mehr - aber Googlebot hält sich an dessen Anweisungen.
Googlebot für Bilder Googlebot-Image
Googlebot für Videos Googlebot-Video
Google Mobile Googlebot-Mobile
Google Mobile AdSense Mediapartners-Google oder Mediapartners
Google AdSense Mediapartners-Google oder
Mediapartners
Yahoo Slurp
Yahoo Mobile YahooSeeker/M1A1-R2D2
MSNbot / Bing bingbot
MSN für Mobile MSNBOT_Mobile
Internet Archive ia_archiver

Übrigens: Ich freue mich über Aktualisierungen und Erweiterungen von euch für diese Liste.

Spezialfall “Mobile-Site”

Mit der robots.txt kann man auch eine Mobile Site von einer Desktop-Site “trennen”. Und zwar, indem man die mobilen Bots auf der Desktop-Variante sperrt und die “normalen” Bots auf der Mobile Site. Allerdings würde ich das immer auch mit entsprechenden Sitemaps kombinieren.

Desktop-Site:
User-Agent: Googlebot-Mobile
Disallow: /

Mobile Site:
User-Agent: Googlebot
Disallow: /

Hier können auch jeweils noch die Allow-Angaben gemacht werden – aber das ist wohl nicht wirklich notwendig. Aber natürlich können auch noch weitere Mobile-Bots verwendet werden (siehe Tabelle unten)

Weitere Hinweise für die robots.txt

  • Darf der Crawler eine Seite bzw. ein Verzeichnis nicht crawlen, heißt das nicht, dass die Seiten daraus auf keinen Fall in den Google-Index kommen. Denn wenn Links darauf zeigen, wird Google die Seite in den Index nehmen – er kennt sie ja. Aber er wird sie nicht crawlen. Also wird auch z.B. die Anweisung “noindex” gar nicht sehen.
  • Getestet werden kann die robots.txt auch in den Google Webmaster Tools. Dort, im Bereich “Status” und “Blockierte URLs” kann eine Anweisung direkt mit Beispiel-URLs gecheckt werden.
  • Mit dem Firefox Addon Roboxt sieht man jederzeit den Status einer Seite in der robots.txt (https://addons.mozilla.org/de/firefox/addon/roboxt/)
  • Zusätzlich kann man eine oder mehrere Sitemaps in der robots.txt verlinken. Die Eintragung würde so aussehen: Sitemap: http://[www.meine-domain.de]/sitemap.xml
  • Zulässig sind auch Kommentarzeilen, die mit “#” beginnen.

Bitte: Alles in Maßen und mit Ruhe!

Immer dann, wenn wir bei einem Kunden auf eine richtig ausführliche und lange robots.txt stoßen, werde ich misstrauisch. Ich frage dann: Gibt es jemanden, der mir jede Anweisung darin wirklich erklären kann? Ist dies nicht der Fall, kann es gut sein, dass eigentlich tolle Landingpages vom Crawling ausgenommen werden. Die beste Strategie ist dann, mit folgender robots.txt zu starten und jede Anweisung in Ruhe diskutieren:

User-agent: *
Disallow:

Denn diese Anweisung heißt: Willkommen, Robots, schaut euch meine Seite an…

P.s: Vielen Dank an Markus Walter, Tobias Schwarz, Christian Lange und dem Kommentator etradogmbh für wichtige und hilfreiche Ergänzungen, die ich gerne eingebaut habe!

GD Star Rating
loading...
Was ein SEO über die robots.txt wissen sollte, 4.0 out of 5 based on 23 ratings

Eric Kubitz

Eric Kubitz ist einer der Chefs der CONTENTmanufaktur GmbH . Außerdem ist er Redner auf Konferenzen, Dozent bei Hochschulen, schreibt über SEO (und über andere Dinge) und ist der Chefredakteur des SEO-Book.

More Posts - Website - Twitter - Facebook - LinkedIn - Google Plus

Bookmark and Share
3 comments
ewood42day
ewood42day

Gelungener Artikel, hatte schon fast vergessen, wofür diese Datei genutzt werden kann.

Indexlift
Indexlift

Eric das ist dir wieder gut gelungen. Schöne Übersicht, verständlich auch für SEO Einsteiger und Webmaster, danke. Jens

etradogmbh
etradogmbh

Sehr umfangreiche ausführliche und interessante Liste - Danke dafür.

Der Ordnunghalber sollte erwähnt werden, dass in jeder Zeile das Raute-Zeichen "#" als Kommentar erlaubt ist.

# Test-Seite

 

Igor

 @etradogmbh 

Trackbacks

  1. [...] seo-book.de: Was ein SEO über die robots.txt wissen sollte [...]

  2. [...] Tagen über nichts anderes, als die robots.txt und was ein SEO über die robots.txt wissen sollte (Original). Alles schön und gut, die beiden Artikel bieten wirklich gute Grundlagen zum Thema [...]

  3. [...] Der Vorteil: Die Konfiguration ist einfach über ein Textfile möglich. Alle Deteils hat Eric im SEO Book [...]

  4. [...] Was ein SEO über die robots.txt wissen sollte – Die kleine Text-Datei `robots.txt´ ist ein kleines Stück Technik, das man als SEO verstehen sollte. Denn sie steuert die Crawler der Suchmaschinen über die eigene Webseite. Weiter… [...]

  5. […] SEO Book Blog: Was ein SEO über die robots.txt wissen sollte […]

  6. […] Genau das steht auch in der robots.txt Datei von great2gether. Wer mehr über die robots.txt Datei erfahren möchte kann auf seo-book.de nachlesen. […]