Sie sind hier: |
edv-beratung-thomas.de / robots.txt: Synthax und Beispiele |
Suchmaschinen-Optimierung Schritt für Schritt: Praxis-Tipps (nicht nur) für Einsteiger
robots.txt: Verzeichnisse oder Seiten für Robots sperren: Synthax und Beispiele:
Mit einer einfachen Text-Datei namens robots.txt im Stammverzeichnis Ihres Servers können Sie festlegen, welche Verzeichnisse oder Seiten Sie für alle oder bestimmte Suchmaschinen-Crawler sperren wollen. robots.txt-Dateien können auch auf Subdomains eingesetzt werden.
Synthax der robots.txt:
Die Synthax der
robots.txt ist einfach:
Beispiele für robots.txt: Verzeichnisse / Seiten für Robots sperren oder zulassen:
-
# für alle Robots alles sperren
User-agent: *
Disallow: /
beachten Sie den Sonderfall: User-agent: * nur einer von mehreren Datensätzen (eigener Abschnitt)
-
# für alle Robots nichts sperren
User-agent: *
Disallow:
eine leere oder nicht vorhandene robots.txt erfüllt den gleichen Zweck
-
# für Yahoo Robot alles sperren
User-agent: slurp
Disallow: /
-
# für Bing Robot nichts sperren
User-agent: bingbot
Disallow:
-
# für alle Robots die beiden angegebenen Verzeichnisse sperren
User-agent: *
Disallow: /geheim/
Disallow: /verboten/
# aber diese eine Seite doch für Robots zulassen
Allow: /geheim/nicht-ganz-so-geheim.html
-
# für alle Robots drei bestimmte Seiten im Stammverzeichnis sperren
User-agent: *
Disallow: /geheim.html
Disallow: /streng-geheim.html
Disallow: /aeusserst-geheim.html
-
# für Yahoo Robot alles sperren
User-agent: slurp
Disallow: /
# für Bing Robot nichts sperren
User-agent: bingbot
Disallow:
-
# für Bing und Exalead Robots alles sperren
User-agent: bingbot
User-agent: ExaBot
Disallow: /
-
# für Googlebot alle Bilder und PDF-Dateien sperren
User-agent: Googlebot
Disallow: /*.gif$
Disallow: /*.jpg$
Disallow: /*.pdf$
Beachten Sie, daß das Jokerzeichen * in Dateinamen nicht zum Standard gehört. Diese Anweisungen werden nur von Googlebot, nicht von anderen Robots erkannt.
Sonderfall: "User-agent: * " ist nur einer von mehreren Datensätzen:
Ein Webmaster beabsichtigt, für
Googlebot,
bingbot und
slurp sein Verzeichnis
geheim zu sperren, allen anderen Robots soll der Zugriff auf die vollständige Website verboten werden. Hierzu erstellt er folgende
robots.txt:
User-agent: Googlebot
User-agent: bingbot
User-agent: slurp
Disallow: /geheim/
User-agent: *
Disallow: /
Wenn (wie in diesem Beispiel) die
robots.txt mehrere Datensätze enthält, von denen ein Datensatz mit
User-agent: * eingeleitet wird, überschreibt dieser Datensatz
nicht die anderen Datensätze, sondern wirkt ergänzend:
Die in diesem Datensatz festgelegten Regeln gelten nur für jene Suchmaschinen-Crawler, die in den anderen Datensätzen nicht explizit erwähnt werden. In welcher Reihenfolge die Datensätze angeordnet sind, ist belanglos: der mit
User-agent: * eingeleitete Datensatz könnte also auch an erster Stelle stehen.
So sieht es zumindest der ursprüngliche
robots.txt-Standard (dort im Absatz
Format) aus dem Jahr 1994 vor. Und auch Google richtet sich danach, siehe
Google Developers: Robots.txt Specifications, Abschnitt
Order of precedence for user-agents (leider gibt's die Seite noch nicht auf Deutsch, obwohl der Verfasser Johannes Müller ein Schweizer ist).
Aber niemand kann garantieren, daß wirklich die Crawler
aller Suchmaschinen diese ursprüngliche Regel beachten, so daß es im Zweifelsfall sicherlich die weniger riskante Lösung wäre, alle Robots, für die Regeln festgelegt werden sollen, in einem Datensatz explizit zu erwähnen.
Client-Identifikationen von Such-Robots:
Einige aktuelle Robots-Bezeichnungen, also die Angaben, die Sie in der
User-agent: - Zeile eintragen können, sind
Googlebot (Google),
slurp (Yahoo),
bingbot (Bing),
ExaBot (Exalead) und
ia_archiver ("Wayback Machine" Archive.org). Weitere Robots-Bezeichnungen finden Sie unter
Client-Identifikationen von Such-Robots.
Beachten Sie, daß Microsofts Suchmaschine Bing (vormals Live.com, vormals MSN) im Jahr 2011 damit begonnen hat, ihre
MSNbot aus dem Verkehr zu ziehen und durch
bingbot zu ersetzen, und passen Sie Ihre
robots.txt ggf. entsprechend an.
robots.txt: Pfad zur XML-Sitemap eintragen:
Wenn Sie eine XML-Sitemap verwenden, können Sie in Ihrer Datei robots.txt den absoluten Pfad zur Sitemap als eigenen Datensatz (und deshalb von anderen Datensätzen durch eine Leerzeile getrennt) eintragen. Das einleitende Schlüsselwort Sitemap kann mit dem Großbuchstaben S oder dem Kleinbuchstaben s beginnen. Sie können auch mehrere Sitemap-Dateien in die robots.txt eintragen.
Beispiel:
Sitemap: http://www.ihr-name.de/sitemap.xml
Sinn und Zweck der robots.txt:
Im Normalfall sind Sie froh, wenn möglichst viele Suchmaschinen möglichst viele Ihrer Seiten erfassen. Von daher bräuchten Sie überhaupt keine Datei
robots.txt.
Es gibt aber bestimmte Ausnahmen, in denen es sinnvoll erscheint, Suchmaschinen-Crawler auszuschließen:
- Sie betreiben die Website eines Kaninchenzüchtervereins, und bestimmte Seiten sollen nicht öffentlich zugänglich sein, sondern sind nur für die Mitglieder bestimmt. Es macht keinen Sinn, diese Seiten von Suchmaschinen erfassen zu lassen. Beachten Sie aber, daß Browser die Inhalte von robots.txt-Dateien nicht beachten. Sie müssen diese nur für Mitglieder bestimmten Seiten also zusätzlich mit einem Kennwortschutz belegen.
- Sie bieten auf Ihrer Website Seiten mit Formularen an und möchten verhindern, daß Sie mit automatisierten Einträgen zugemüllt werden. Also sperren Sie die Formular-Seiten für Robots.
Angaben in der robots.txt wirken grundsätzlich erst ab dem Zeitpunkt, zu dem sie dort eingetragen wurden, robots.txt-Einträge gelten also nicht rückwirkend: Mit "nachträglichen" Angaben in der
robots.txt können bei Google & Co keine Daten gelöscht werden.
Seiten im Google-Index trotz Sperre in robots.txt?
Das kann vorkommen, wenn die in der
robots.txt gesperrten Seiten (projekt-intern oder von außen) verlinkt sind,
und wenn zugleich ein meta-tag robots mit dem Eintrag noindex im head dieser Seiten fehlt. Eine Sperre in der
robots.txt verhindert nur den Besuch der Crawler, nicht die Aufnahme der hierdurch gesperrten Seiten in den Google-Index.
Wenn Sie sich bei Wikipedia über die robots.txt informieren wollen, beachten Sie, daß der Wikipedia-Artikel
"Robots Exclusion Standard" immer noch Fehler enthält. So wird etwa nicht zwischen Zugriffsverbot und Indexierungsverbot unterschieden. In meinem persönlichen Blog habe ich vor kurzem den
Wikipedia-Artikel analysiert.
Sie können übrigens den Inhalt eines ganzen Verzeichnisses von der Indexierung durch Google ausschließen, wenn Sie in dem betreffenden Verzeichnis eine Datei
.htaccess mit diesem Inhalt erstellen:
<IfModule mod_headers.c>
Header set X-Robots-Tag "noindex"
</IfModule>
Voraussetzungen sind, daß Ihr Server unter Apache läuft, und daß das Apache-Modul
mod_headers bei Ihnen verfügbar ist.
Besonderes Szenario: Ihre
Website wurde gehackt ...
Crawler-Fehler durch 302-Weiterleitung zur Telekom-Wartungsseite:
Wenn Sie T-Online- bzw. Telekom-Kunde sind und bemerken, daß Googlebot auf Ihre Seiten nicht zugreifen konnte, kann das daran liegen, daß die Telekom gelegentlich von Ihrer Domain per Statuscode 302 zu einer Telekom-eigenen Wartungsseite weiterleitet, und die dieser Wartungsseite zugehörige robots.txt dann die Crawler-Zugriffe auf Ihre Seiten sperrt.
Der rosa Riese scheint diesen üblen Trick gerne dann anzuwenden, wenn seine unschuldigen Kunden ahnungslos im Bett liegen und friedlich schlafen.
Robots der "Wayback Machine" Archive.org aussperren:
Aus dem "Land der unbegrenzten Möglichkeiten" stammt die
Wayback Machine:
"Surf the web as it was": Wer sich über die Inhalte (Texte und Bilder) einer Website zu einem bestimmten Zeitpunkt der Vergangenheit (ab Januar 1996) informieren will, wird hier fündig. Was den einen bei berechtigten Nachforschungen hilft (etwa: Was stand zum Zeitpunkt der Bestellung vor vier Monaten in den AGB der Firma Gierig & Raffke?), verfluchen andere, die vor Jahren in jugendlichem Leichtsinn peinliche Texte über sich ins Netz geladen hatten und das inzwischen bitter bereuen.
Mit folgendem Eintrag in der
robots.txt können Sie die Robots der "Wayback Machine" von Ihrer Website aussperren:
User-agent: ia_archiver
Disallow: /
Die Besonderheit des ia_archiver ist, daß er dann nicht nur (wie bei solchen Angaben üblich) die Website künftig nicht mehr ausforscht, sondern
auch bereits in der Vergangenheit gespeicherte Versionen löscht.
Stand: 15.08.2015 |
nach oben |
©2007-2024 Gösta Thomas |