Jeder Suche geht ein Finden voraus, für Suchmaschinen übernehmen das die so genannten Crawler[1]. Die Webcrawler sind die eigentlichen Arbeiter einer Suchmaschine, denn Sie sind diejenigen, die permanent das Web durchsuchen, um relevante Inhalte, dem Nutzer im Suchindex zur Verfügung zu stellen. Erkundet wird eine Website zunächst durch Abruf einer einfachen Textdatei. Der robots.txt.

Hiermit werden Suchmaschinen rudimentäre Kommandos zur Indizierung einer Website übermittelt: In robots.txt wird definiert ob bestimmte oder alle Crawler[1] einzelne Dateien und Verzeichnisse oder die ganze Website besuchen dürfen. Zudem kann grob festgelegt werden in welcher Geschwindigkeit das geschehen darf. Überdies können Seitenbetreiber die Informationsbeschaffung erleichtern, indem Sitemaps benannt werden, die ihrerseits bereits Inhaltsangaben und Seitenstruktur enthalten können.

Eine robots.txt besteht aus jeweils höchstens einer Anweisungen pro Zeile, die deren Name vom Wert mittels Doppelpunkt getrennt wird.
Angenommen eine Website verfügt über ein Vezreichnis /privat, dessen Inhalt privat bleiben soll, so genügen folgende Zeilen in der Datei robots.txt damit Webcrawler von einer Erkundung absehen:

User-agent: *Disallow: /privat

Die Eigenschaft User-agent hat im Beispiel den Wildcard-Wert, d.h. folgenden Kommandos sind an alle User-agent gerichtet, in diesem Beispiel etwa wird der Zugriff auf das Verzeichnis privat nicht gestattet, aus dem engl. disallow.

Die einzelnen Kommandos in der robots.txt

Mit Hilfe des Wildcard kann man Kommandos an alle richten. Unter Angabe eines bestimmten Namens hinter User-agent lassen sich bestimmte aber auch adressieren, mit

User-agent: Googlebot

etwa der bekannteste, nämlich Googlebot[2] .

Etwas gewöhnungsbedürftig ist der Wildcard dafür alles oder nichts zugänglich zu machen. Nichts, in robots.txt also

Disallow:

bedeutet, das der Crawler alles erkunden darf. Demgegenüber gibt ein einfacher Slash zu verstehen, das der jeweilge Crawler auf der ganzen Seite nichts zu suchen habe.

Neben der Angabe konkreter Datei- und Verzeichnisnamen können auch bei der Anweisung Disallow Wildcard verwendet werden: * für beliebige Zeichenfolgen, $ für das Zeilenende.

Disallow: /*-admin$

verhindert den Zugriff auf alle Dateien und Verzeichnisse, die mit -admin enden, ganz gleich ob im Haupt- oder einem Unterverzeichnis hinterlegt.

Mit Hilfe von Crawl-delay kann ein Sekundenzahl angegeben werden, die zwischen zwei Aktionen verstreichen muss. Die Angabe dient somit nicht nur Drosselung der Zugriffe sondern auch der Limitierung der durch den Crawler verschlungenen Bandbreite.

Sitemap benennt Dateien vom gleichnamige XML-basierten Dokumenttyp. Deren Inhalt liefert bereits erste Hinweis zur Struktur der zu erwartenden Inhalte, und reguliert nicht nur den Zugang zu ihnen.

robots.txt: unerlässlich, limitiert

Zur Steuerung des Zugriff auf Verzeichnisse von Crawlern sind robots.txt nach wie vor unerlässlich. Zur Erfassung der Inhalte aber sind Sitemaps erforderlich. Zur Verhinderung von Zugriffen sind die Inhalte mit Hilfe des Webservers vor unautorisiertem Zugriff Dritter zu schützen. Die Inhalte selbst sind mit Metadaten angereichert so aufzubereiten, damit die per robots.txt offen gelegten Dateien und Verzeichnisse auch vom Crawler erschlossen werden können.

Quellen:

[1] https://de.wikipedia.org/wiki/Webcrawler
[2] https://de.wikipedia.org/wiki/Googlebot
Infos zur Robots.txt bei SELFHTML: https://de.selfhtml.org/diverses/robots.htm