Bei der robots.txt handelt es sich um eine Textdatei im root-Verzeichnis einer Website. Sie enthält Handlungs-Anweisungen für Crawler und ermöglicht so z.B. bestimmte Verzeichnisse von der Indizierung durch Suchmaschinen auszunehmen.
Hintergrund
Grundsätzlich liegt es im Interesse eines Website-Inhabers, dass die Inhalte seiner Website von Suchmaschinen indexiert werden. Es gibt jedoch unterschiedliche Gründe einzelne Seiten, Verzeichnisse oder auch Dateitypen von der Indizierung auszunehmen. Zwar gibt es die Möglichkeit z.B. über Meta-Tags Regeln für einzelne Seiten zu definieren. Jedoch bietet die Verwendung einer robots.txt einige Vorteile. So können ganze Verzeichnisbäume ausgenommen werden, oder Regeln für unterschiedliche Bots wie den Googlebot definiert werden.
Der Haken bei der Sache: diese grundsätzlich sehr mächtige Textdatei stellt lediglich eine Handlungsaufforderung dar. Zwar halten sich die Bots der bekannten Suchmaschinen in der Regel daran. WebCrawler mit zwielichtigen Aufgaben (z.B. zum Auslesen von Email-Adressen) können die Regeln aber gänzlich ignorieren. Auch können Seiten trotz hinterlegter robots-Datei indiziert werden, beispielsweise durch externe Verlinkungen auf die Inhalte.
Anwendungsbereiche
Dir Gründe für das Sperren von Seiten oder Verzeichnissen sind unterschiedlich. Einige typische Szenarien sind:
- Unfertige Seiten: solange Inhalte nicht fertig gestellt sind, sollten sie in der Regel auch nicht indexiert werden. Webprojekte die sich noch in Entwicklung befinden aber bereits online sind, profitieren von einem Aussperren der Bots.
- Crawl-Budget sparen: bei Seiten mit niedrigem PageRank scannt Google nur eine gewisse Anzahl von Seiten. Um dieses „Budget“ nicht zu verschwenden können unwichtigere Bereiche einer Seite ausgenommen werden.
- Temporäre Inhalte: Seiten mit Ablaufdatum haben mitunter nichts im Index zu suchen.
- Private Inhalte: generell gilt, jene Seiten die nicht für die Aufnahme in Suchmaschinen geeignet sind, können ausgeschlossen werden.
Der Aufbau einer robots.txt
Die Datei muss zwingen im Wurzelverzeichnis einer Domain gespeichert sein (z.B. https://www.vabelhavt.at/robots.txt). Der Dateiname darf nicht verändert werden und ist in Kleinschreibung anzugeben. Bearbeitet werden kann das File mit einem beliebigen Texteditor. Der Inhalt der Datei besteht aus sogenannten Records (Datensätzen) die durch eine Leerzeile von einander getrennt werden. Jeder Record beinhaltet den User-Agent in dem der betroffene Bot definiert wird, sowie die entsprechende Anweisung (in der Regel Disallow):
User-agent: Beispiel-Bot
Disallow: /bilder/
In diesem Beispiel wird einem fiktiven Bot der Zugriff auf das Verzeichnis „bilder“ untersagt:
User-agent: *
Disallow: /
* definiert die Regeln für ALLE Bots. / verbietet den Zugriff auf Daten aller Verzeichnisse. Der Eintrag darf nur einmal vorgenommen werden. Die Regeln gelten für alle Bots die über keinen eigenen Eintrag verfügen.
User-Agent: *
Disallow: /files/
Allow: /files/public/
„Allow“ bietet die Möglichkeit z.B. Verzeichnisse aus einem „Disallow“ auszunehmen. Hier wird allen Bots der Zugriff auf das Verzeichnis „files“ verboten. Das Unterverzeichnis „public“ ist von dieser Regel ausgenommen und kann gecrawlt werden.
Sitemap: https://beispiel-url.com/sitemap.xml
Existiert (z.B. bei größeren Websites) eine Sitemap, so kann der Speicherort als Information für Crawler in der robots.txt angegeben werden.
User-Agent: Googlebot-News
Disallow: /story.html
In diesem Beispiel wird dem Googlenews-Crawler der Zugriff auf die Seite „story.html“ verboten.
Einen guten Überblick über die Syntax einer robots-Datei bietet dieser SelfHTML-Eintrag. Ist die Datei erstellt findet man in der Google Search Console die Möglichkeit die robots.txt zu testen („Crawling/robots.txt-tester“).
Fazit
Die robots.txt bietet eine gute Möglichkeit um die Indizierung der Seite bis zu einem gewissen Grad zu steuern. Eine Garantie für das Nicht-Indizieren von Inhalten besteht jedoch nicht. Das Wissen um die unterschiedlichen Bots und deren jeweiliger Interpretation der Syntax ist in der Suchmaschinenoptimierung zwingend notwendig, um durch durch diese Maßnahme keinen Schaden zu verursachen. Denn irrtümlich ausgesperrte Seiten oder Verzeichnisse sind oft das Resultat bei falscher Anwendung.