robots.txt

Sinnvolle Anweisungen für Roboter
Wie man aus dem Namen schon schliessen kann, richtet sich die robots.txt speziell an (Suchmaschinen-) Roboter. Es handelt sich um eine Textdatei mit Anweisungen zur (Nicht-) Indizierung einzelner Dateien oder Verzeichnisse.
# ALLE Dateien für ALLE Roboter ERLAUBEN
User-agent: *
Disallow:
Minimale robots.txt, es sind keinerlei Ausschlüsse enthalten

Brauche ich eine robots.txt?

Jein! Die Datei ist kein zwingender Bestandteil einer Webpräsenz. Allerdings wird sie von den meisten Suchmaschinen erwartet und abgefragt - was zu Fehlermeldungen in den Serverprotokollen führt, wenn sie nicht vorhanden ist. Ausserdem macht es durchaus Sinn, verschiedene Elemente von der Indizierung auszuschliessen. Dazu gehören bspw. Admin- Verzeichnisse, cgi- Ordner, Bilder- Ordner, Entwicklungsbereiche, geschlossene (Mitglieder-)Bereiche uvm. Die Anweisungen der robots.txt können alternativ auch über das ROBOTS- Meta- Tag gegeben werden (s.u.).

Was bewirkt die robots.txt und was nicht?

Die Dateien oder Verzeichnisse, die ausgeschlossen werden, werden von seriösen Suchmaschinen- Roboter nicht ausgelesen bzw. nicht indiziert. Damit tauchen sie - sofern sich der Roboter / die Suchmaschine an die Anweisungen hält - auch nicht in den Suchergebnissen auf. Die Dateien werden aber NICHT vor dem Zugriff bzw. der Auslieferung geschützt. Dafür sind andere Mechanismen, bspw. eine .htaccess, notwendig. "Böse" Roboter ignorieren die Angaben.

Erstellen & Position der robots.txt

Eine robots.txt gehört in das Root- Verzeichnis einer Homepage, also bspw.
  http://www.grundlagen.com/robots.txt
In keinem anderen Verzeichnis ist sie erforderlich bzw. wirksam.
Es ist eine reine Text-Datei (ASCII) OHNE HTML-Elemente. Sie sollte also auch mit einem passenden Editor erstellt werden, also bspw. vi unter Linux oder notepad unter Windows. Der Dateiname darf ausschliesslich aus Kleinbuchstaben bestehen.

Inhalte & Aufbau der robots.txt

Inhalt und Aufbau folgt dem "Robots Exclusion Standard". Grundsätzlich werden immer erst der User-Agent (der Roboter) genannt, in den nächsten Zeilen folgen die Anweisungen. Kommentar- Zeilen beginnen mit einer "#".
# robots.txt fuer http://www.meineDomain.tld/
User-agent: *  #Anweisung gilt für ALLE Roboter!
Disallow: /temp/  #alle Dateien im Ordner "temp" ausschliessen
Disallow: /admin/  #alle Dateien im Ordner "admin" ausschliessen
   
User-agent: web  #Anweisung gilt nur für Roboter "web"
Disallow: /img  #alle Dateien UND Ordner ausschliessen, die mit "img" beginnen
Beispiel 1, vgl. Kommentarzeilen
# robots.txt fuer http://www.meineDomain.tld/
User-agent: web1  
User-agent: web2  
User-agent: web3  #Anweisung gilt für Roboter "web1", "web2" und "web3"
Disallow: /www2/  #alle Dateien im Ordner "www2" ausschliessen
Disallow: /wurst.html  #einzelne Datei "/wurst.html" ausschliessen
Beispiel 2, vgl. Kommentarzeilen
# ALLE Dateien für ALLE Roboter ausschliessen
User-agent: *
Disallow: /
Minimale robots.txt, ALLE Roboter werden komplett ausgeschlossen

Tipp: Auch das Robots- Meta- Tag benutzen

Das Robots- Meta- Tag im Seiten- Header lässt weitere Angaben zu, an die sich (einige) Suchmaschinen halten. Google benutzt die Beschreibungen die im ODP (Open Directory Project, DMOZ) verwendet werden, für die Suchergebnisse und das eigene Directory. Da die Formulierung des ODP- Eintrages nicht unbedingt mit den eigenen Wünschen übereinstimmt, sollte man die Verwendung ggf. ausschliessen ("NOODP"). Für das Yahoo!- Verzeichnis ("NOYDIR") gilt dies entsprechend. Auf die Wertigkeit des Eintrages und des eingehenden Links wirkt sich die Verwendung nicht aus.
<meta name="robots" content="NOODP, NOYDIR" />
Tipp: NOODP und NOYDIR im Robots- Meta- Tag

Weitere Anweisungen

Die IETF hat die Anweisung "allow:" eingeführt, welche gegenteilig zu disallow: arbeitet, und einzelnen oder allen Robotern Zugriffe / Indizierung erlaubt. Die Umsetzung seitens der Suchmaschinen ist allerdings noch unvollständig, die Verwendung ist dementsprechend fragwürdig.

Es ist erlaubt eine Zeile mit der Position der XML- Sitemap anzugeben.