Homepage selbermachen 7.852 Themen, 35.619 Beiträge

Robots.txt was ist das

(Anonym) / 3 Antworten / Baumansicht Nickles

Also ich habe ne Internetseite und ich habe in meinem Fehler Protokoll gesehen das diverse suchmaschienen versuchen die Datei Robots.txt zu laden. Ich denke die ist wichtig aber wozu und was muss drinstehen danke im Vorraus

bei Antwort benachrichtigen
(Anonym) Nachtrag zu: „Robots.txt was ist das“
Optionen




















Mit der Datei robots.txt Seiten vor Robots schützen



Manchmal ist es sinnvoll, bestimmte Seiten oder Bereiche einer
Site vor der Indexierung zu schützen. Zum Beispiel
dann, wenn es sich um Seiten handelt, die sich
täglich ändern oder an denen noch gearbeitet wird. Auch
Programmdateien, Bilder oder Logfiles will man vielleicht vor
Robots schützen.





Aufbau der robots.txt



Um das zu ermöglichen, gibt es den "http://info.webcrawler.com/mak/projects/robots/norobots.html"
title="Original Spezifikationen von Martijn Koster">Robots
Exclusion Standard
. Nach diesem Standard muß man eine
Textdatei mit dem Namen robots.txt erstellen und diese
im Stammverzeichnis der Domain plazieren, so daß Robots sie
finden. Die Suchpfade sehen dann z.B. so aus:




http://www.beispiel.de/robots.txt
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 fuer http://www.beispiel.de/
User-agent: BeispielRobot
Disallow: /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,
daß 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:




# Alle Robots ausschließen
User-agent: *
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: wget
User-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äßt, 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, daß 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.



Beispieltabelle


Um das alles zusammenzufassen ein kleines Beispiel:




# http://beispiel.de/robots.txt

User-agent: scooter
Disallow: /

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 *.



Die Robots dürfen dann wie folgt auf die Dateien
zugreifen:
















































































URL:
Scooter
Wget & WebZip
Andere
http://beispiel.de/ nein "stateimg"> ja "stateimg"> ja "stateimg">
http://beispiel.de/about.html nein "stateimg"> ja "stateimg"> ja "stateimg">
http://beispiel.de/archiv/ nein "stateimg"> ja "stateimg"> ja "stateimg">
http://beispiel.de/index.html nein "stateimg"> ja "stateimg"> ja "stateimg">
http://beispiel.de/news/ nein "stateimg"> ja "stateimg"> nein "stateimg">
http://beispiel.de/news/index.html nein "stateimg"> ja "stateimg"> nein "stateimg">
http://beispiel.de/radio.html nein "stateimg"> ja "stateimg"> nein "stateimg">
http://beispiel.de/robots.txt ja "stateimg"> ja "stateimg"> ja "stateimg">
http://beispiel.de/temp.html nein "stateimg"> ja "stateimg"> nein "stateimg">
http://beispiel.de/temporaer/new.html nein "stateimg"> ja "stateimg"> nein "stateimg">


Ein "en" href=
"http://info.webcrawler.com/mak/projects/robots/norobots-rfc.html">
Working Draft
der
IETF

führt neben der Disallow Anweisung auch die
Allow Anweisung ein:




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.



Fehler vermeiden & Syntax prüfen



Beim erstellen der robots.txt muß man darauf achten,
daß 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, daß man die Datei im ASCII Modus
überträgt. Wie das funktioniert, kann man in der
Anleitung des jeweiligen FTP Clients nachlesen. Wichtig ist auch,
daß 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 den Syntax seiner
robots.txt überprüfen will,
kann den "http://www.tardis.ed.ac.uk/~sxw/robots/check/">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 erlauben
User-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.



Was mit der robots.txt nicht geht


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, daß gewisse Seiten nicht indexiert werden.



Links zum Thema












bei Antwort benachrichtigen
(Anonym) Nachtrag zu: „Robots.txt was ist das“
Optionen

rechtes oder linkes Patschehändchen auf das Teil vor dir auf dem Tisch legen, ... ja das Teil was man Maus nennt und auf den Link hier klicken:

KLICK MICH

ist das denn so schwer?

bei Antwort benachrichtigen
CiTay (Anonym) „Robots.txt was ist das“
Optionen

Mann was soll denn das, Mr. Anonym, bei der Antwort hier eine ganze Homepage rein zu pasten??

Also, um auf die Frage zurück zu kommen, da kann man rein schreiben, wie die Suchmaschinen deine Seite katalogisieren sollen (z.B. kannst du Verzeichnisse vom Suchdienst ausschließen etc).

Wenn du willst, dass grundsätzlich alle Seiten deiner Domain in der Suchmaschine auftauchen, dann lege eine leere robots.txt an (0 byte). Dann werden alle Unterseiten katalogisiert.

bei Antwort benachrichtigen