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.