SEO-Tipp #7: die Datei robots.txt

SEO-TippManchmal m├Âchte man, dass bestimmte Dateien oder Verzeichnisse von einer Suchmaschine nicht weiter untersucht und in den Suchindex aufgenommen werden. Daf├╝r gibt es mehrere Methoden. Wenn es sich bei den Dateien oder Unterverzeichnissen nicht um besonders gesch├╝tzte Dateien handelt, die unter keinen Umst├Ąnden ohne weitere Authentifierung im Internet sichtbar sein d├╝rfen, so bietet sich als einfaches, leicht pflegbares Mittel der Einsatz der Datei robots.txt an.

Eine robots.txt hilft dabei, den (unerw├╝nschten) Traffic auf Ihrer Website zu reduzieren. Das entlastet den Server und je nach Vertrag auch Ihr Budget.

Bei der robots.txt handelt es sich um eine einfache Text-Datei mit wenigen Anweisungen, die verschiedene Suchmaschinen oder andere Internet-Spider anweist, genau festgelegte Dateien oder Verzeichnisse in Ruhe zu lassen.

Die folgende Anweisung weist Suchmaschinen an, das Verzeichnis „/administrator/“ nicht zu inspizieren.

User-agent: *
Disallow: /administrator/

Die Datei robots.txt muss sich im Root-Verzeichnis Ihrer Website befinden, also zum Beispiel http://sevke.biz/robots.txt. Wenn Sie sich einen Webspeicher mit anderen teilnehmen, so dass der URL zu Ihrer Startseite etwa so aussieht http://www.domaene.de/~IhrName/, k├Ânnen Sie die robots.txt leider nicht einsetzen, denn sie m├╝sste sich im Verzeichnis http://www.domaene.de befinden und w├╝rde dort auch alle anderen Verzeichnisse betreffen, nicht nur Ihr eigenes. Der Dateiname muss komplett in Kleinbuchstaben geschrieben werden.

Dar├╝ber hinaus ist die robots.txt f├╝r Webcrawler wie Suchmaschinen keineswegs bindend. Ganz im Gegenteil dokumentiert sie lediglich den Wunsch des Website-Betreibers, bestimmte Dateien und Verzeichnisse nicht weiter zu ber├╝cksichtigen. Nat├╝rlich werden die Dateien und Verzeichnisse durch Auflistung in der robots.txt auch nicht unsichtbar. Links von anderen Websites auf Ihre Inhalte lassen Suchmaschinen ihre Seiten trotzdem indexieren. Allerdings wird in den Ergebnislisten der Suchmaschinen dann zwar der Link, aber nicht der Inhalt als Snippet angezeigt. Um die Anweisungen in der robots.txt zu ber├╝cksichtigen, muss der Webcrawler entsprechend programmiert sein. Programme, die Ihre Website auf Schwachstellen hin untersuchen, um Angriffsziele f├╝r Hacker zu identifizieren, k├╝mmern sich kein bisschen um die robots.txt.

Sinnvolle Ausschl├╝sse von Verzeichnissen sind zum Beispiel tempor├Ąre Verzeichnisse wie /cache/ oder /tmp/ oder Verzeichnisse mit Logdateien wie /logs/. Da die Dateien in diesen Verzeichnissen sowieso nur eine begrenzte Lebensdauer haben, macht es keinen Sinn, sie von Suchmaschinen im Index f├╝hren zu lassen.

Kurz und b├╝ndig …

  • weist Webcrawler an, bestimmte Inhalte nicht zu indexieren
  • Schreibweise: robots.txt
  • Speicherort: Stammverzeichnis („root“) der Website
  • Mehrere Anweisungsbl├Âcke mit User-agent: / Disallow:
  • kein Zugriffsschutz f├╝r Dateien

Aufbau der robots.txt

Die Datei ist in Bl├Âcke aufgeteilt, die jeweils durch eine Leerzeile voneinander getrennt sind. Von diesen Bl├Âcken darf es beliebig viele geben. In jedem Block werden mit der Anweisung User-agent: zun├Ąchst die Webcrawler spezifiziert, f├╝r die der Block g├╝ltig sein soll. Darauf schlie├čen sich eine oder mehrere Anweisungen Disallow: an, mit deren Hilfe die Dateien und Unterverzeichnisse benannt werden, die vom Crawlen ausgeschlossen werden sollen. Zus├Ątzlich sind auch Kommentarzeilen m├Âglich, die jeweils mit einem # („Lattenzaun“) beginnen.

Beispiel f├╝r einen User-Agenten:

User-agent: Googlebot

Beispiel f├╝r Ausschluss-Zeilen:

Disallow: /cache/
Disallow: /tmp/
Disallow: /logs/

Oder zusammen:

# Googlebot soll bitte /cache und /tmp nicht crawlen

User-agent: Googlebot
Disallow: /cache/
Disallow: /tmp/
Disallow: /logs/
Achtung: Schr├Ągstrich beachten!

Der Schr├Ągstrich am Ende des Verzeichnisnamens ist wichtig. Wird er weggelassen, so werden alle Verzeichnisse und Dateien, die mit der Bezeichnung beginnen, ausgeschlossen. /cache w├╝rde also auch Dateien wie cache.html betreffen.

Das bedeutet aber auch, dass Sie nicht nur Verzeichnisse, sondern ganz bestimmte einzelne Dateien ausschlie├čen k├Ânnen.

Pro Zeile darf immer genau eine Datei oder ein Verzeichnis ausgeschlossen werden. Sie d├╝rfen also nicht mehrere Dateien oder Verzeichnisse in einer Zeile angeben, auch nicht, wenn Sie diese durch Kommas voneinander trennen.

Wenn die Auschlussregeln f├╝r s├Ąmtliche Webcrawler gelten sollen, so k├Ânnen Sie als Platzhalter das Zeichen * (Stern) verwenden:

User-agent: *

Danach folgende Bl├Âcke werden nicht mehr ausgewertet! Wollen Sie also in der robots.txt zus├Ątzliche Regeln f├╝r ganz bestimmte Crawler definieren, so m├╝ssen diese Bl├Âcke als erstes in der robots.txt stehen. Erst am Ende der Datei darf der Block mit dem Platzhalter * stehen.

Spezielle Beachtung sollten Sie den folgenden beiden Regeln schenken:

User-agent: *
Disallow: 

In diesem Fall wird gar nichts verboten, sondern alles erlaubt!

User-agent: *
Disallow: /

In diesem Fall wird s├Ąmtlichen Webcrawlern das Crawlen der kompletten Website verboten.

Es gibt also die folgenden drei M├Âglichkeiten, Inhalte Ihrer Website von der Indexierung auszuschlie├čen:

User-agent: *
Disallow: /

Die gesamte Website wird blockiert.

User-agent: *
Disallow: /verzeichnis/

Ein bestimmtes Verzeichnis (inklusive der gesamten darunter liegenden Struktur) wird ausgeschlossen.

User-agent: *
Disallow: /datei.img

Eine bestimmte Datei wird ausgeschlossen. Aber Vorsicht! Der Dateiname /datei.img beschreibt nur den Anfang des Dateinamens. Es werden alle Dateien und Verzeichnisse ausgeschlossen, die mit „datei.img“ beginnen, also datei.img.html, datei.img.php und auch das Verzeichnis /datei.img.

Hinweis zur Nutzung von Google AdSense

Wenn Sie auf Ihrer Website Werbung von Google-Partnern (AdSense) einblenden, so muss Ihre Website f├╝r den User-Agent Mediapartners-Google crawlbar sein. Dies erreichen Sie, indem Sie am Anfang der robots.txt vor einem eventuell folgenden Block, der f├╝r alle Crawler g├╝ltig ist (User-agent: *), folgenden Block einf├╝gen:

User-agent: Mediapartners-Google
Disallow:

Weitere Anweisungen

Je nach Programmierung des Webcrawlers unterst├╝tzen einige von ihnen weitere syntaktische Konstrukte.

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

Mit der Anweisung Allow: werden bestimmte Dateien oder Verzeichnisse explizit f├╝r das Crawlen freigegeben. Dies ist sinnvoll, wenn Sie davor ein Verzeichnis gesperrt, einzelne Unterverzeichnisse oder Dateien aber doch f├╝r die Indexierung freigeben wollen. Im Beispiel soll nichts auf der Website gecrawlt werden mit Ausnahme des Verzeichnisses /content.

User-agent: *
Disallow: /*.pdf$

Das * (Sternchen) steht hier als Platzhalter f├╝r eine beliebige Zeichenkette.
Das $ (Dollar-Zeichen) verankert den Suchbegriff am Ende des Dateinamens.
Es sollen also alle Dateien mit der Endung „pdf“ ausgeschlossen werden.

User-agent: *
Disallow: 
Crawl-delay: 120

Die Anweisung Crawl-delay: soll die Geschwindigkeit des Crawlers verringern. Hinter der Anweisung folgt eine Zeitangabe in Sekunden, die den Crawler anweist, nur alle 120 Sekunden (beispielsweise) eine weitere Seite der Website zu untersuchen.

User-agent: *
Disallow: 
Sitemap: http://IhreDom├Ąne.tld/sitemap.xml

Mit der Anweisung Sitemap: k├Ânnen Sie der Suchmaschine den Speicherort der Datei sitemap.xml mitteilen, in der die Struktur Ihrer Website beschrieben ist.

Alle genannten Anweisungen werden nach eigener Aussage von den Suchmaschinen Google, Yahoo und Bing unterst├╝tzt.

Bekannte Webcrawler

Hier folgt eine Liste mit einigen bekannten Webcrawlern:

User-agent Bemerkung
Googlebot Webcrawler von Google f├╝r die Websuche
Googlebot-Image Webcrawler von Google f├╝r die Nachrichtensuche
Mediapartners-Google Webcrawler von Google f├╝r Google AdSense
Adsbot-Google Webcrawler von Google f├╝r Google AdWords
Googlebot-Mobile Webcrawler von Google f├╝r verschiedene Mobilger├Ąte
Googlebot-News Webcrawler von Google f├╝r die Bildersuche
Googlebot-Video Webcrawler von Google f├╝r die Videosuche
 
Bingbot Webcrawler von Microsoft Bing f├╝r die Websuche
Adidxbot Webcrawler von Microsoft Bing f├╝r Werbeanzeigen
MSNbot Fr├╝herer Webcrawler von Microsoft Bing f├╝r Websuche
BingPreview Webcrawler von Microsoft Bing zur Erzeugung von Website Snapshots
 
Slurp Webcrawler von Yahoo f├╝r die Websuche
AhrefsBot Site Explorer und Backlink Checker von Ahrefs
magpie-crawler Crawler der Firma Brandwatch
SISTRIX Crawler Crawler von Sistrix zur Informationsbeschaffung ├╝ber Websites

Weitere Webcrawler finden Sie in der Robots Database.

Hinweis zur Sicherheit Ihrer Website

Die Datei robots.txt ist von jedem Internet-Nutzer auslesbar! Dazu muss er im Browser lediglich einen URL wie http://sevke.biz/robots.txt eingeben. Das bedeutet aber auch, dass sich jeder Besucher einen ersten ├ťberblick ├╝ber die Verzeichnisstruktur Ihrer Website verschaffen kann. Besonders kritische Dateien oder Verzeichnisse sollten Sie hier also besser nicht auff├╝hren. Zus├Ątzlich sind nat├╝rlich weitere Ma├čnahmen n├Âtig, um solche Dateien oder Verzeichnisse vor einem unerw├╝nschten Zugriff zu sch├╝tzen.

Joomla und die robots.txt

Joomla! liefert standardm├Ą├čig eine robots.txt mit folgendem Inhalt aus:

# If the Joomla site is installed within a folder such as at
# e.g. www.example.com/joomla/ the robots.txt file MUST be
# moved to the site root at e.g. www.example.com/robots.txt
# AND the joomla folder name MUST be prefixed to the disallowed
# path, e.g. the Disallow rule for the /administrator/ folder
# MUST be changed to read Disallow: /joomla/administrator/
#
# For more information about the robots.txt standard, see:
# http://www.robotstxt.org/orig.html
#
# For syntax checking, see:
# http://www.sxw.org.uk/computing/robots/check.html

User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /cli/
Disallow: /components/
Disallow: /images/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /logs/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/

Beachten Sie, dass Joomla das Verzeichnis /images von der Indexierung ausschlie├čt. Dieses Verzeichnis enth├Ąlt die Bilder Ihrer Website. Wenn Sie m├Âchten, dass diese Bilder in der Bildersuche von Google gefunden werden, so m├╝ssen Sie die Zeile aus der robots.txt per # auskommentieren oder einfach l├Âschen. Sie k├Ânnten aber auch einen neuen Block an den Anfang einf├╝gen, der nur den User-Agenten Googlebot-Image f├╝r dieses Verzeichnis zul├Ąsst.

WordPress und die robots.txt

M├Âglicherweise wundern Sie sich, dass in dem Root-Verzeichnis Ihrer WordPress-Installation gar keine robots.txt existiert, diese aber dennoch angezeigt wird, wenn Sie http://IhreDom├Ąne.tld/robots.txt im Browser aufrufen.

WordPress erzeugt die robots.txt virtuell mit dem Inhalt:

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

Dies wird mit Hilfe der Funktion do_robots in der Datei /wp-includes/functions.php erledigt, kann also dort auch von Ihnen ge├Ąndert werden. Wenn Sie dies tun, m├╝ssen Sie aber bei jedem Update von WordPress damit rechnen, dass diese Datei ├╝berschrieben wird. Eine Sicherung ist also unerl├Ąsslich. Einfacher und sinnvoller ist es, eine eigene robots.txt im Root-Verzeichnis Ihrer WordPress-Installation anzulegen.

Was man mit der robots.txt noch so anstellen kann

Einige Website-Betreiber stellen reichlich Schabernack mit der robots.txt an.

Einen ganzen Lebenslauf finden Sie zum Beispiel in der robots.txt von Rishi Lakhani.

Facebook erlaubt das Crawlen seiner Website nur mit ausdr├╝cklicher schriftlicher Genehmigung.

Du kannst die Kommentare als RSS 2.0-Feed abonnieren. Du kannst am Ende der Seite einen Kommentar schreiben. Pings sind nicht zugelassen.

Dein Kommentar

Du musst dich erst anmelden.