robots.txt: Funktion und Regeln erklärt
Autor: Redaktion Domeny.ForSale Veröffentlicht
Kurz erklärt: robots.txt ist eine öffentlich zugängliche Textdatei, die Webcrawlern mitteilt, welche Bereiche einer Website sie abrufen dürfen und welche sie meiden sollen. Sie hilft, die Besuche von Crawlern zu steuern, schützt aber keine Daten und garantiert nicht, dass eine Adresse aus den Suchergebnissen entfernt wird. Ihre Regeln wirken nur bei Crawlern, die sie beachten.
Wo liegt robots.txt und wie funktioniert die Datei?
Die Datei robots.txt wird im Stammverzeichnis der Website abgelegt, etwa unter der Adresse https://example.com/robots.txt. Ein Crawler, also ein Programm, das Webseiten automatisch besucht, kann sie lesen, bevor er deren Inhalte abruft. Anhand der Regeln bestimmt er, auf welche Pfade er zugreifen darf.
Die Regeln gelten für ein bestimmtes Protokoll, einen bestimmten Host und einen bestimmten Port. Die Datei für https://example.com steuert nicht automatisch die Crawler auf https://shop.example.com oder auf der HTTP-Version. Eine Subdomain, die eigene Einschränkungen benötigt, braucht eine separate Konfiguration.
Fehlt die Datei und liefert der Server den Statuscode HTTP 404, also „nicht gefunden“, bedeutet das grundsätzlich, dass keine Einschränkungen durch robots.txt bestehen. Das ist etwas anderes als ein Serverausfall: Serverfehler beim Abrufen dieser Datei können die Besuche von Crawlern vorübergehend einschränken. Wie solche Fehler im Einzelnen behandelt werden, hängt vom jeweiligen Crawler ab.
Wie liest und schreibt man die Regeln?
Die grundlegenden Einträge bilden eine Gruppe: Sie benennen einen Crawler und legen anschließend erlaubte oder gesperrte Pfade fest. Eine Beispieldatei kann so aussehen:
User-agent: *
Disallow: /suche/
Disallow: /entwuerfe/
Allow: /entwuerfe/oeffentliches-beispiel.html
Sitemap: https://example.com/sitemap.xml
Die einzelnen Elemente bedeuten:
User-agent— der Name des Crawlers, für den die Regeln gelten; das Sternchen*kennzeichnet eine allgemeine Gruppe.Disallow— ein Pfad, den der Crawler nicht abrufen soll.Allow— ein erlaubter Pfad, besonders nützlich als Ausnahme von einer umfassenderen Sperre.Sitemap— die vollständige Adresse der Sitemap, also einer Datei mit einer Liste von Adressen, auf die du die Suchmaschine hinweisen möchtest.
In diesem Beispiel sollen Crawler Adressen meiden, die mit /suche/ oder /entwuerfe/ beginnen. Die angegebene öffentliche Datei im Arbeitsverzeichnis dürfen sie jedoch abrufen. Wenn sich Regeln mit Allow und Disallow überschneiden, hat laut Standard die spezifischere Übereinstimmung Vorrang. Bei Pfaden wird zwischen Groß- und Kleinschreibung unterschieden.
Der Eintrag Disallow: / sperrt den Abruf der gesamten Website für Crawler, die zur jeweiligen Gruppe gehören. Ein leerer Eintrag Disallow: bewirkt keine solche Sperre. Dieser kleine Unterschied führt bei der Veröffentlichung einer Website häufig zu schwerwiegenden Fehlern.
Wenn du eine Gruppe für einen bestimmten Crawler hinzufügst, prüfe in seiner Dokumentation, wie er Gruppen auswählt. Gehe nicht davon aus, dass diese Gruppe automatisch alle Einschränkungen übernimmt, die unter User-agent: * stehen.
Eine Abrufsperre ist kein Indexierungsverbot
Das Abrufen einer Seite durch einen Crawler, auch Crawling genannt, und die Indexierung sind zwei unterschiedliche Vorgänge. Bei der Indexierung werden Informationen über eine Seite analysiert und in der Datenbank der Suchmaschine gespeichert, aus der die Suchergebnisse entstehen.
Eine in robots.txt gesperrte Adresse kann weiterhin in den Ergebnissen erscheinen, etwa wenn die Suchmaschine sie über Links auf anderen Seiten entdeckt. Ein Crawler muss den Inhalt nicht abrufen, um von der Existenz einer Adresse zu erfahren.
Wenn eine öffentlich zugängliche Seite nicht in den Ergebnissen erscheinen soll, verwendet man üblicherweise die Direktive noindex: eine Anweisung im Meta-Tag der Seite oder im HTTP-Header X-Robots-Tag. Der Crawler muss die Antwort abrufen können, um noindex zu lesen. Eine gleichzeitige Sperre in robots.txt kann das verhindern. Noindex direkt in robots.txt einzutragen, ist kein gültiger Weg, um Seiten aus den Suchergebnissen von Google auszuschließen.
Beispielsweise kann eine Dankeseite nach dem Absenden eines Formulars für Nutzer zugänglich bleiben und mit noindex versehen werden. Ein Verwaltungsbereich mit Kundendaten sollte dagegen eine Anmeldung und eine Prüfung der Zugriffsberechtigungen verlangen — eine bloße Sperre für Crawler schützt seine Inhalte nicht.
Wann ist robots.txt sinnvoll, wann eine andere Lösung?
Robots.txt kann helfen, den Abruf umfangreicher Ergebnisse einer internen Suchfunktion oder zahlreicher Filtervarianten einzuschränken. Zunächst muss jedoch geklärt werden, ob diese Adressen in den Suchergebnissen erscheinen sollen und ob der Crawler dort andere Anweisungen lesen muss.
Sperre die für die Darstellung der Seite benötigten CSS- und JavaScript-Dateien nicht ohne vorherige Prüfung. Sind diese Dateien nicht zugänglich, kann es für die Suchmaschine schwieriger werden, das Aussehen und den Inhalt der Website korrekt nachzubilden. Weniger Crawler-Besuche allein bedeuten keine bessere Sichtbarkeit der Website.
Die Datei robots.txt ist öffentlich zugänglich. Trage deshalb keine Passwörter, Tokens oder Listen vertraulicher Ressourcen darin ein. Schütze eine Testumgebung durch Authentifizierung oder Zugriffsbeschränkungen auf Netzwerkebene. Ein bösartiger Crawler kann die veröffentlichten Verbote vollständig ignorieren.
Wie lässt sich die Datei sicher einrichten und prüfen?
Sichere vor einer Änderung an robots.txt eine Kopie der aktuellen Version. Führe anschließend diese kurze Prüfung durch:
- Öffne
/robots.txtauf der richtigen Domain und prüfe, ob der Server reinen Text statt einer Fehlerseite oder eines Anmeldeformulars zurückgibt. - Stelle Beispieladressen zusammen: die Startseite, eine Produktseite, einen Artikel und einen Pfad, der gesperrt werden soll.
- Prüfe für diese Adressen und den jeweiligen Crawler, welche Regeln greifen. Vergewissere dich anhand der offiziellen Dokumentation der betreffenden Suchmaschine, welche Syntax unterstützt wird.
- Kontrolliere nach der Veröffentlichung den Status der Datei in den Tools für Websitebetreiber, beispielsweise Google Search Console. Crawler können eine Kopie der Datei zwischenspeichern, weshalb Änderungen nicht immer sofort berücksichtigt werden.
Wenn die Website ein CMS oder ein Plugin nutzt, das robots.txt erzeugt, bearbeite die entsprechende Konfigurationsquelle. Eine manuell hochgeladene Datei kann überschrieben werden oder die automatisch erzeugte Version ersetzen. Lege vor dem Speichern der Änderungen das konkrete Ziel fest: den Abruf einschränken, Seiten aus den Suchergebnissen ausschließen oder Daten schützen — jedes dieser Ziele erfordert ein anderes Werkzeug.
Siehe auch: Was ist 2FA?
