Pietro Scherer
Um das zu ermöglichen, gibt es den Robots Exclusion
Standard. Nach diesem Standard muss man eine Textdatei mit dem Namen robots.txt erstellen
und diese im Stammverzeichnis der Domain platzieren, so dass Robots sie finden.
Die Suchpfade sehen dann z.B. so aus:
http://download.beispiel.de/robots.txt
http://beispiel.de:8080/robots.txt
Die robots.txt Datei ist nach einem bestimmten Schema
aufgebaut. Zuerst gibt man an, für welchen Crawler die Anweisungen gelten und
dann die einzelnen Anweisungen. Ein Beispiel:
# robots.txt für http://www.beispiel.de/
User-agent: BeispielRobotDisallow: /temp/ # Die Dateien sind sehr kurzlebig
Disallow: /logfiles/ # Die ändern sich jeden Tag
Disallow: /bilder/ # Bilder nicht downloaden
Disallow: /cgi-bin/ # CGI Ausgaben nicht indexieren
Disallow: /news.html # Die news.html ändert sich täglich
Mit User-agent: BeispielRobot bestimmt man, dass
die Anweisungen nur für den Crawler BeispielRobot gelten. Mit den
einzelnen Disallow Einträgen bestimmt man Dateien und Verzeichnisse
die nicht indexiert werden sollen. Alles, vor dem ein # steht, gilt
als Kommentar und wird von den Robots ignoriert.
Wenn man mit einem Mal alle Crawler ausschließen will,
benutzt man den sog. Wildchar *, also:
Disallow: /temp/
Wenn man nicht gleich alle Crawler, sondern nur ein paar
bestimmte meint, kann man diese so angeben:
# Massendownloader vom CGI Verzeichnis fernhalten
User-agent: wgetUser-agent: webzip
User-agent: webmirror
User-agent: webcopy
Disallow: /cgi-bin/
Um seine Site ganz von der Indexierung auszuschließen
kann man folgendes benutzen:
# Ganze Site für alle Robots sperren
User-agent: *
Disallow: /Wenn man den Slash (/) weglässt, gibt man Seine Site ganz für die Indexierung frei:
# Ganze Site freigeben
User-agent: *Disallow:
Bei den Disallow Einträgen ist die Groß- und
Kleinschreibung egal. Man sollte aber darauf achten, wo und ob man den Slash (/)
setzt, denn der Eintrag
User-agent: *
Disallow: /index
Disallow: /temp/
Würde dazu führen, dass alle Urls die mit /Index anfangen
nicht indexiert werden, auch z.B. /index.html oder /indexed-files/datei.html statt
einfach nur das Verzeichnis /index/, wohingegen bei Disallow: /temp/ wirklich
nur die Dateien im Verzeichnis /temp/ ausgeschlossen werden.
Um das alles zusammenzufassen ein kleines Beispiel:
#
http://beispiel.de/robots.txt
User-agent:
scooterDisallow: /
User-agent: wget
User-agent: webzip
Disallow:
User-agent: *
Disallow: /news/
Disallow: /radio.html
Disallow: /temp
Die Anweisungen für alle (*) Robots werden nur von Robots
interpretiert, die nicht explizit aufgeführt werden; scooter, wget und webzip
ignorieren in diesem Fall die Angaben für *.
User-agent: *
Disallow: /temp/Allow: /temp/daily.html
Da die Allow Anweisung aber erst später als der
eigentliche Standard eingeführt wurde, wird sie noch nicht von allen Robots
unterstützt. Von daher sollte man sich nicht darauf verlassen und lieber nur Disallow benutzen.
Beim Erstellen der robots.txt muss man darauf
achten, dass man auch wirklich einen Texteditor benutzt und nicht etwa einen
HTML Editor. Geeignete Editoren wären z.B. vi unter Linux, edit.com unter DOS
oder notepad.exe unter Windows.
Wenn die Datei via FTP auf den Webserver transferiert wird,
sollte man sicherstellen, dass man die Datei im ASCII Modus überträgt. Wie das
funktioniert, kann man in der Anleitung des jeweiligen FTP Clients nachlesen.
Wichtig ist auch, dass der Dateiname nur aus Kleinbuchstaben besteht und nicht
etwa Robots.TXT heißt. Falls das Betriebssystem das nicht unterstützt
(z.B. DOS), kann man die Datei auch nach dem Transfer auf den Server
umbenennen.
Wer darüber hinaus noch die Syntax seiner robots.txt überprüfen will,
kann den robots.txt
Syntax Checker dazu benutzen.
Es ist auf jeden Fall sinnvoll, eine minimale robots.txt Datei
nach diesem Schema zu erstellen:
#
robots.txt for http://www.beispiel.de/
# Zugriff auf alle Dateien erlaubenUser-agent: *
Disallow:
Da man so viele unnötige Einträge in den Errorlogs
verhindert (404 Not found), die sonst immer dann auftauchen, wenn der Crawler
die Datei nicht findet.
Man kann mit der robots.txt keine Dateien vor
Zugriffen schützen. Dazu sollte man immer den Paßwortschutz des Webservers
verwenden. Auch ist kein Robot verbindlich verpflichtet, sich an den Exclusion
Standard zu halten, auch wenn es die meisten tun. Bei den Disallow: sind
keine wildchars wie? oder * erlaubt. Mit der robots.txt kann
man auch keine Dateiverweise erstellen und auch keinen Robot dazu bringen etwas
Bestimmtes zu indexieren. Man kann höchstens darum bitten, dass gewisse Seiten
nicht indexiert werden.
Keine Kommentare:
Kommentar veröffentlichen