Robots Exclusion Standard

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Robots.txt)
Wechseln zu: Navigation, Suche

Nach der Übereinkunft des Robots-Exclusion-Standard-Protokolls liest ein Webcrawler (Robot) beim Auffinden einer Webseite zuerst die Datei robots.txt (kleingeschrieben) im Stammverzeichnis („root“) einer Domain. In dieser Datei kann festgelegt werden, ob und wie die Webseite von einem Webcrawler besucht werden darf. Website-Betreiber haben so die Möglichkeit, ausgesuchte Bereiche ihrer Website für (bestimmte) Suchmaschinen zu sperren. Das Protokoll ist rein hinweisend und ist auf die Mitarbeit des Webcrawlers angewiesen. Man spricht hier auch von „freundlichen“ Webcrawlern. Ein Ausgrenzen bestimmter Teile einer Website durch das Protokoll garantiert keine Geheimhaltung, dazu sind Seiten oder Unterverzeichnisse eines Servers durch HTTP-Authentifizierung, eine Access Control List (ACL) oder einen ähnlichen Mechanismus zu schützen. Manche Suchmaschinen zeigen die vom Webcrawler gefundenen und zu sperrenden URLs trotzdem in den Suchergebnisseiten an, jedoch ohne Beschreibung der Seiten.

Das Protokoll wurde 1994 von einer unabhängigen Gruppierung entwickelt, ist inzwischen jedoch allgemein anerkannt und kann als Quasi-Standard betrachtet werden. Anfang Juni 2008 bekannten sich Google,[1] Microsoft und Yahoo zu einigen Gemeinsamkeiten.[2]

Aufbau[Bearbeiten]

Die Datei robots.txt ist eine Textdatei in einem einfach lesbaren Format. Jede Zeile besteht aus zwei Feldern, die durch einen Doppelpunkt getrennt werden.

User-agent: Sidewinder
Disallow: /

Die erste Zeile beschreibt den Webcrawler (hier: User-agent), an den sich die darauf folgenden Regeln richten. Es darf beliebig viele solcher Blöcke geben. Webcrawler lesen die Datei von oben nach unten und halten an, wenn sich ein Block auf sie bezieht. Für jede URL, die ausgeschlossen ist, existiert eine eigene Zeile mit dem Disallow-Befehl. Leerzeilen sind nur oberhalb von User-agent-Zeilen erlaubt. Sie trennen die Blöcke voneinander. Einzeilige, mit einem Rautenzeichen (#) beginnende Kommentare sind an jeder Stelle möglich. Sie dienen der Übersichtlichkeit und werden vom Webcrawler ignoriert.

Anweisung Beschreibung Beispiel Funktion
User-agent: Spezifizierung des Webcrawlers User-agent: Sidewinder Gilt nur für den Webcrawler namens „Sidewinder“.
User-agent: * Wildcard für User-agent; gilt für alle Webcrawler.
Disallow: Auslesen nicht gestatten Disallow: Kein Ausschluss; die komplette Website darf durchsucht werden.
Disallow: / Die komplette Website darf nicht durchsucht werden.
Disallow: /Temp/
Disallow: /default.html
Das Verzeichnis „Temp“ und die Datei „default.html“ dürfen nicht durchsucht werden.
Disallow: /default Alle Dateien und Verzeichnisse, die mit „default“ beginnen, werden nicht durchsucht z. B. „default.html“, „default.php“, „default-page.html“, „defaultfolder/“, und so weiter. Ein Verbot von „default.html“ verbietet also auch z. B. „default.html.php“ oder „default.html/“, auch wenn diese Konstellation eher selten vorkommen dürfte.
$ Zeilenende-Anker (nur Googlebot, Yahoo! Slurp, msnbot) Disallow: /*.pdf$ Alle PDF-Dateien werden ignoriert.
? URLs mit '?' behandeln (nur Googlebot) Disallow: /*? Alle URLs, die ein '?' enthalten, werden ignoriert.
Allow: /*?$ Alle URLs, die mit einem '?' enden, werden erlaubt.
Allow: Auslesen erlauben (nur Ask.com, Googlebot, Yahoo! Slurp, msnbot) Disallow: /
Allow: /public/
Nur das Verzeichnis „public“ darf durchsucht werden, der Rest nicht.
Crawl-delay: Auslesegeschwindigkeit (nur Yahoo! Slurp, msnbot) Crawl-delay: 120 Nur alle 120 Sekunden darf eine neue Seite zum Auslesen aufgerufen werden.
Sitemap: URL der Sitemap (nur Googlebot, Yahoo! Slurp, msnbot, Ask.com) Sitemap: http://example.com/sitemap.xml Die Sitemap gemäß dem Sitemap-Protokoll liegt unter der angegebenen Adresse.

Beispiele[Bearbeiten]

# robots.txt für example.com
# Diese Webcrawler schließe ich aus
User-agent: Sidewinder
Disallow: /
 
User-agent: Microsoft.URL.Control
Disallow: /
 
# Diese Verzeichnisse/Dateien sollen nicht durchsucht werden
User-agent: *
Disallow: /default.html
Disallow: /Temp/ # diese Inhalte verschwinden bald
Disallow: /Privat/Familie/Geburtstage.html # Nicht geheim, sollen aber nicht in Suchmaschinen gelistet werden.

Mit den folgenden Befehlen wird allen Webcrawlern die Indexierung der kompletten Website verboten.

User-agent: *
Disallow: /

Weiteres Beispiel: robots.txt der Wikipedia

Alternativen[Bearbeiten]

Metainformationen[Bearbeiten]

Webcrawler können auch durch Meta-Elemente im HTML-Quelltext einer Webseite am Indexieren gehindert werden.[3] Auch Meta-Elemente sind rein hinweisend, benötigen die Mitarbeit „freundlicher“ Webcrawler und garantieren keine Geheimhaltung. Soll der Suchroboter die Webseite weder in den Index der Suchmaschine aufnehmen, noch den Hyperlinks der Seite folgen, ist das Meta-Element folgendermaßen zu notieren:

<meta name="robots" content="noindex,nofollow" />

In HTML-Dokumenten, für die beides erlaubt sein soll, kann die Angabe entweder weggelassen oder explizit notiert werden:

<meta name="robots" content="all" />

ACAP[Bearbeiten]

Mit ACAP 1.0 (Automated Content Access Protocol) wurde am 30. November 2007 eine Alternative zum Robots Exclusion Standards geschaffen. Von Suchmaschinenbetreibern und anderen Diensteanbietern werden diese Angaben nicht verwendet. Google schließt aus, ACAP in der derzeitigen Form zu nutzen.[4]

Siehe auch[Bearbeiten]

Literatur[Bearbeiten]

  • Ian Peacock: Showing Robots the Door, What is Robots Exclusion Protocol? In: Ariadne, May 1998, Issue 15, Webversion.

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. Verbesserungen des Robots-Exclusion-Protokolls. Auf: Google-Blog Webmaster Zentrale, 10. Juni 2008.
  2. Everything You Wanted To Know About Blocking Search Engines. Auf: searchengineland.com, 12. Juni 2008.
  3. Robots and the META element. W3C Recommendation
  4. itwire.com