Tutorials
robots.txt
Was ist die robots.txt?
Mit der robots.txt ist es möglich den so genannten Bots das Zugreifen auf bestimmte Verzeichnisse oder Dateien innerhalb einer Website zu "verbieten". Eine solche Datei schreibt man ganz einfach mit einem Texteditor und legt sie in das Hauptverzeichnis der Webseite. Dort sollte sie dann von den Bots gefunden und ausgelesen werden.
Nutzen
Wie bereits erwähnt ist es mit der Datei möglich den Zugriff auf Verzeichnisse und Dateien für bestimmte Bots zu verbieten. Außerdem kann man hier auch einen Verweis für eine Sitemap platzieren.
Wie verbiete ich dem Bot Zugriff auf eine Datei?
Genau genommen verbietet man dem Bot nicht den Zugriff auf ein Verzeichnis, man sagt ihm lediglich, dass er sich diese nicht anschauen soll. Deshalb können die Bots das Verzeichis dennoch einlesen! Auch kann ein Benutzer diese Datei einsehen, indem er sie ganz einfach aufruft(meine-homepage.de/robots.txt)! Man sollte sich also überlegen, ob man wirklich alle Verzeichnisse in diese Datei einträgt, welche nicht für die Öffentlichkeit bestimmt sind. Zum sichern eines Ordners verwendet man am besten immer .htaccess-Dateien!
Aber zur Antwort der Frage:
#auch in einer robots.txt gibt es Kommentare
#nun verbieten wir einem Bot den Zugriff auf unsere Bilder
User-agent: %einBot%
User-agent: %nocheinBot%
Disallow: /img/
Aber das geht auch noch anders:
#nun verbieten wir allen Bots den Zugriff auf unsere Bilder
User-agent: *
Disallow:/img/
Wichtig: Wenn du ein Verzeichnis verbietest, dann auf keinen Fall den / am Ende vergessen. Sonst verhindert dass auch den Zugriff auf Dateien wie img.php o.ä..
Wer möchte, dass ein Bot gar nichts einliest, schreibt einfach folgendes in die robots.txt:
#jetzt sollte kein robot mehr etwas indizieren
User-agent: *
Disallow: /
Soll ein Bot alles einlesen dürfen, schreibt man folgendes:
#meinbot darf nun alles einlesen!
User-agent: %meinbot_name%
Disallow:
Nun darf %meinbot_name% alle Seiten indizieren! Wie eingangs erwähnt, müssen sich Bots nicht an solche Dateien halten!
Die häufigsten User Agents:
Googlebot
- Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
- Googlebot/2.1 (+http://www.googlebot.com/bot.html)
- Googlebot/2.1 (+http://www.google.com/bot.html)
Yahoo! Slurp
- Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)
msnbot 2.1
- msnbot/2.1
Sonsitges
Auch hatte ich schon erwähnt, dass man in der robots.txt auf die eigene Sitemap verweisen kann. Das geht auch relativ einfach, es ist aber zu beachten, dass es sich hier um die XML-Variante handeln muss, da der Bot sonst nichts damit anfangen kann!
Sitemap: http://www.meine-homepage.de/sitemap.xml
Dieser Eintrag kann übrigens an einer beliebigen Stelle stehen! Auch gibt es die Möglichkeit, dass man ein Wartelimit für einen Bot angibt.
#der blablubb-Bot darf nur noch alle 50sek. kommen
#ist eigentlich nicht nötig aber der Vollständigkeit halber...
User-agent: blablubb
Crawl-delay: 50
Durch den Einsatz von Meta-Tags ist es möglich bestimmte Seiten ganz speziell zu beeinflussen:
<!-- Die Seite soll nicht in den Index aufgenommen werden -->
<meta name="robots" content="noindex">
<!-- Alle Links auf der Seite werden nicht für das Ranking herangezogen -->
<meta name="robots" content="nofollow">
<-- Es soll kein Snippet der Seite in den Suchergebnissen angezeigt werden -->
<meta name="robots" content="nosnippet">
<-- Der Bot darf die Seite indizieren und alle Links verfolgen -->
<meta name="robots" content="index,follow"<
Auch möglich: noindex, nofollow bzw. in Kombination: noindex,follow ...usw.
Zum Schluss hier noch ein Beispiel für eine robots.txt:
User-agent: *
Disallow: /geheim/
User-agent: %irgendwer%
Disallow: /img/index.html
User-agent: %irgendwer_2%
Disallow: /meinetestseiten/
User-agent: %nochmal_irgendwer%
Disallow: /
User-agent: %irgendwer_3%
Disallow: /
Sitemap: http://www.meine-homepage.de/sitemap.xml
#Damit der Server nicht Überlastet wird
#(braucht man aber meistens nicht!)
User-agent: %einspezibot%
Craw-delay: 50 # in sekunden!