Eine ausführliche Anleitung zur Robots.txt-Datei

Veröffentlicht: 2020-08-10

Die robots.txt ist eine sehr leistungsfähige Datei, die Ihrer Website hinzugefügt werden kann, um zu steuern, welche Bereiche Ihrer Website von Suchmaschinen gecrawlt und welche Bereiche ignoriert werden sollen. Es ist wichtig, dass Sie Ihre robots.txt regelmäßig überprüfen, um sicherzustellen, dass sie auf dem neuesten Stand ist, und wenn möglich ein Überwachungstool verwenden, um benachrichtigt zu werden, wenn Änderungen auftreten.

Bei Semetrical prüfen wir als Teil unseres technischen SEO-Serviceangebots die robots.txt-Datei eines Kunden, wenn wir eine technische Prüfung einer Kundenwebsite durchführen, um zu überprüfen, ob die blockierten Pfade blockiert werden sollten. Wenn das SEO-Team außerdem im Rahmen des technischen SEO-Auditprozesses auf Probleme stößt, z. B. Duplizierung, können neue robots.txt-Regeln geschrieben und der Datei hinzugefügt werden.

Da die robots.txt eine wichtige Datei ist, haben wir einen Leitfaden zusammengestellt, der abdeckt, was sie letztendlich ist, warum jemand sie verwenden könnte und häufige Fallstricke, die beim Schreiben von Regeln auftreten können.

Was ist eine Robots-TXT-Datei?

Die robots.txt-Datei ist die erste Anlaufstelle für einen Crawler beim Besuch Ihrer Website. Es ist eine Textdatei, die Anweisungen für verschiedene Benutzeragenten auflistet, die Webcrawlern im Wesentlichen mitteilen, welche Teile einer Website gecrawlt und welche ignoriert werden sollten. Die wichtigsten Anweisungen, die in einer robots.txt-Datei verwendet werden, werden durch eine „Erlauben“- oder „Verbieten“-Regel angegeben.

In der Vergangenheit funktionierte auch eine „noindex“-Regel, aber im Jahr 2019 hörte Google auf, die noindex-Richtlinie zu unterstützen, da es sich um eine unveröffentlichte Regel handelte.

Wenn die Datei nicht richtig verwendet wird, kann sie sich nachteilig auf Ihre Website auswirken und zu einem enormen Rückgang des Datenverkehrs und der Rankings führen. Fehler können beispielsweise passieren, wenn eine ganze Website für Suchmaschinen gesperrt wird oder ein Teil einer Website versehentlich gesperrt wird. Wenn dies geschieht, werden die mit diesem Teil der Website verbundenen Rankings allmählich sinken und der Verkehr wird wiederum sinken.

Benötigen Sie tatsächlich eine robots.txt-Datei?

Nein, es ist nicht zwingend erforderlich, eine robot.txt auf Ihrer Website zu haben, insbesondere für kleine Websites mit minimalen URLs, aber es wird dringend für mittlere bis große Websites empfohlen. Auf großen Websites ist es einfacher zu steuern, welche Teile Ihrer Website zugänglich sind und welche Abschnitte für Crawler gesperrt werden sollten. Wenn die Datei nicht existiert, wird Ihre Website im Allgemeinen wie gewohnt gecrawlt und indexiert.

Wofür wird die Robots-TXT-Datei hauptsächlich verwendet?

Die robots.txt hat viele Anwendungsfälle und bei Semetrical haben wir sie für die folgenden Szenarien verwendet:

  • Blockieren interner Suchergebnisse, da diese Seiten normalerweise für einen Crawler nicht wertvoll sind und viele Duplizierungen auf einer Website verursachen können.
  • Blockieren von Teilen einer Facettennavigation, wenn bestimmte Facetten aus SEO-Sicht nicht wertvoll sind, aber dennoch für UX benötigt werden, wenn sich ein Benutzer auf Ihrer Website befindet.
  • Blockieren verschiedener Ebenen einer Facettennavigation, wobei eine Facettenebene für Suchmaschinen nützlich sein kann, aber wenn zwei verschiedene Facettenfilter kombiniert werden, können sie für eine Suchmaschine zum Crawlen und Indexieren irrelevant werden.
  • Blockieren von Parametern, die Duplizierung verursachen oder Crawl-Budget verschwenden. Dies ist etwas umstritten, da andere Ihnen möglicherweise sagen, dass Sie Parameter in der robots.txt nicht blockieren sollen, aber dies hat auf einer Reihe unserer Kunden-Websites funktioniert, auf denen Parameter benötigt werden, Crawler sie jedoch nicht crawlen müssen. Es wird dringend empfohlen, zu überprüfen, ob alle Parameter, die Sie blockieren, keine wertvollen Links haben oder für wertvolle Keywords ranken, die Traffic bringen.
  • Blockieren privater Bereiche einer Website wie Checkout-Seiten und Login-Bereiche.
  • Fügen Sie Ihre XML-Sitemap-Speicherorte hinzu, um Crawlern den Zugriff auf alle URLs auf Ihrer Website zu erleichtern.
  • Damit nur bestimmte Bots auf Ihre Website zugreifen und diese crawlen können.
  • Blockieren von nutzergenerierten Inhalten, die nicht moderiert werden können.

Wo platziere ich eine Robots-TXT und wie füge ich sie zu meiner Website hinzu?

Eine robots.txt-Datei muss im Stammverzeichnis Ihrer Website platziert werden, zum Beispiel befindet sie sich auf der Website von Semetrical unter www.semetrical.com/robots.txt und muss robots.txt heißen. Eine Website kann nur eine robots.txt-Datei haben und diese muss sich in einer UTF-8-codierten Textdatei befinden, die ASCII enthält.

Wenn Sie Subdomains wie blog.example.com haben, kann sich die robots.txt im Stammverzeichnis der Subdomain wie blog.example.com/robots.txt befinden.

Wie sieht eine robots.txt-Datei aus?

Eine typische robots.txt-Datei besteht aus verschiedenen Komponenten und Elementen, darunter:

  • User-Agent
  • Nicht zulassen
  • Erlauben
  • Crawl-Verzögerung
  • Seitenverzeichnis
  • Kommentare (Gelegentlich können Sie dies sehen)

Unten sehen Sie ein Beispiel für die robots.txt-Datei von Semetrcals, die einen Benutzeragenten, Sperrregeln und eine Sitemap enthält.

 User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/ Disallow: /comments/feed/ Disallow: /trackback/ Disallow: /index.php/ Disallow: /xmlrpc.php Disallow: /blog-documentation/ Disallow: /test/ Disallow: /hpcontent/ Sitemap: https://devsemetrical.wpengine.com/sitemap.xml

User-Agent

Der Benutzeragent definiert den Beginn einer Gruppe von Anweisungen. Es wird oft mit einem Platzhalter (*) dargestellt, der signalisiert, dass die folgenden Anweisungen für alle Bots gelten, die die Website besuchen. Ein Beispiel hierfür wäre:

User-Agent: *

 User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/

Es kann vorkommen, dass Sie bestimmte Bots blockieren oder nur bestimmten Bots den Zugriff auf bestimmte Seiten erlauben möchten. Dazu müssen Sie den Namen des Bots als User Agent angeben. Ein Beispiel hierfür wäre:

 User-agent: AdsBot-Google Disallow: /checkout/reserve Disallow: /resale/checkout/order Disallow: /checkout/reserve_search

Zu den üblichen Benutzeragenten, die Sie kennen sollten, gehören:

Es besteht auch die Möglichkeit, bestimmte Software daran zu hindern, Ihre Website zu crawlen, oder zu verzögern, wie viele URLs sie pro Sekunde crawlen kann, da jedes Tool seine eigenen Benutzeragenten hat, die Ihre Website crawlen. Wenn Sie beispielsweise SEMRush oder Ahrefs daran hindern möchten, Ihre Website zu crawlen, wird Folgendes zu Ihrer Datei hinzugefügt:

 User-agent: SemrushBot Disallow: * User-agent: AhrefsBot Disallow: *

Wenn Sie die Anzahl der gecrawlten URLs verzögern möchten, würden die folgenden Regeln zu Ihrer Datei hinzugefügt:

 User-agent: AhrefsBot Crawl-Delay: [value] User-agent: SemrushBot Crawl-Delay: [value]

Anweisung verbieten

Die Disallow-Anweisung ist eine Regel, die ein Benutzer in die robots.txt-Datei einfügen kann, die einer Suchmaschine mitteilt, einen bestimmten Pfad oder eine Gruppe von URLs abhängig von der erstellten Regel nicht zu crawlen. Die Datei kann eine oder mehrere Zeilen mit Verbotsregeln enthalten, da Sie möglicherweise mehrere Bereiche einer Website blockieren möchten.

Wenn eine Disallow-Anweisung leer ist und nichts angibt, können Bots die gesamte Website crawlen. Um also bestimmte Pfade oder Ihre gesamte Website zu blockieren, müssen Sie ein URL-Präfix oder einen Schrägstrich „/“ angeben. Zum Beispiel blockieren wir im folgenden Beispiel jede URL, die vom Pfad von /cgi-bin/ oder /wp-admin/ abweicht.

 User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/

Wenn Sie Ihre gesamte Website für Bots wie Google blockieren möchten, müssen Sie eine Disallow-Anweisung gefolgt von einem Schrägstrich hinzufügen. Normalerweise müssen Sie dies nur in einer Staging-Umgebung tun, wenn Sie nicht möchten, dass die Staging-Website gefunden oder indiziert wird. Ein Beispiel würde so aussehen:

 User-agent: * Disallow: /

Richtlinie zulassen

Die meisten Suchmaschinen halten sich an die Allow-Direktive, wo sie einer Disallow-Direktive im Wesentlichen entgegenwirken. Wenn Sie beispielsweise /wp-admin/ blockieren würden, würde dies normalerweise alle URLs blockieren, die von diesem Pfad ausgehen. Wenn es jedoch eine Zulassungsregel für /wp-admin/admin-ajax.php gibt, werden Bots / admin-ajax.php, aber blockieren Sie alle anderen Pfade, die von /wp-admin/ ausgehen. Siehe Beispiel unten:

 User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php

Crawl-Verzögerung

Die Crawl-Verzögerungsanweisung hilft, die Rate zu verlangsamen, mit der ein Bot Ihre Website durchsucht. Nicht alle Suchmaschinen befolgen die Richtlinie zur Crawl-Verzögerung, da es sich um eine inoffizielle Regel handelt.

– Google wird dieser Richtlinie nicht folgen

– Baidu wird dieser Richtlinie nicht folgen

– Bing und Yahoo unterstützen die Crawl-Verzögerungsrichtlinie, bei der die Regel den Bot anweist, „n“ Sekunden nach einer Crawl-Aktion zu warten.

– Yandex unterstützt auch die Richtlinie zur Crawl-Verzögerung, interpretiert die Regel jedoch etwas anders, wenn nur einmal alle „n“ Sekunden auf Ihre Website zugegriffen wird.

Ein Beispiel für eine Crawl-Verzögerungsrichtlinie unten:

 User-agent: BingBot Disallow: /wp-admin/ Crawl-delay: 5

Sitemap-Richtlinie

Die Sitemap-Direktive kann Suchmaschinen mitteilen, wo sie Ihre XML-Sitemap finden können, und erleichtert es verschiedenen Suchmaschinen, die URLs auf Ihrer Website zu finden. Zu den wichtigsten Suchmaschinen, die dieser Richtlinie folgen werden, gehören Google, Bing, Yandex und Yahoo.

Es wird empfohlen, die Sitemap-Anweisung am Ende Ihrer robots.txt-Datei zu platzieren. Ein Beispiel dafür ist unten:

 User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin/ Disallow: /comments/feed/ Sitemap: https://devsemetrical.wpengine.com/sitemap.xml

Kommentare

Eine robots.txt-Datei kann Kommentare enthalten, aber das Vorhandensein von Kommentaren gilt nur für Menschen und nicht für Bots, da alles nach einem Hashtag ignoriert wird. Kommentare können aus mehreren Gründen nützlich sein, darunter:

– Gibt einen Grund an, warum bestimmte Regeln vorhanden sind

– Referenzen, die die Regeln hinzugefügt haben

– Verweise darauf, für welche Teile einer Website die Regeln gelten

– Erklärt, was die Regeln tun

– Unten sehen Sie Beispiele für Kommentare in verschiedenen robots.txt-Dateien:

 #Student Disallow: /student/*-bed-flats-* Disallow: /student/*-bed-houses* Disallow: /comments/feed/ #Added by Semetrical Disallow: /jobs*/full-time/* Disallow: /jobs*/permanent/* #International Disallow: */company/fr/* Disallow: */company/de/*

Ist die Reihenfolge der Regeln wichtig?

Die Reihenfolge der Regeln ist nicht wichtig, aber wenn mehrere Allow- und Disallow-Regeln auf eine URL zutreffen, wird die längste übereinstimmende Pfadregel angewendet und hat Vorrang vor der weniger spezifischen kürzeren Regel. Wenn beide Pfade gleich lang sind, wird die weniger restriktive Regel verwendet. Wenn Sie einen bestimmten URL-Pfad zulassen oder verbieten möchten, können Sie die Regel verlängern, indem Sie „*“ verwenden, um die Zeichenfolge zu verlängern. Zum Beispiel Disallow: ********/make-longer

Auf der eigenen Website von Google haben sie eine Reihe von Beispielsituationen aufgelistet, die zeigen, welche Prioritätsregel Vorrang hat. Die folgende Tabelle wurde von Google übernommen.

Wie überprüfe ich meine robots.txt-Datei?

Es ist immer wichtig, Ihre robots.txt-Datei zu überprüfen und zu validieren, bevor Sie sie live übertragen, da falsche Regeln große Auswirkungen auf Ihre Website haben können.

Der beste Weg zum Testen ist, zum robots.txt-Tester-Tool in der Search Console zu gehen und verschiedene URLs zu testen, die mit den vorhandenen Regeln blockiert werden sollten. Dies ist auch eine großartige Möglichkeit, neue Regeln zu testen, die Sie der Datei hinzufügen möchten.

Beispiele für die Verwendung regulärer Ausdrücke in der robots.txt

Beim Erstellen von Regeln in Ihrer robots.txt-Datei können Sie den Musterabgleich verwenden, um eine Reihe von URLs in einer Sperrregel zu blockieren. Reguläre Ausdrücke können verwendet werden, um einen Musterabgleich durchzuführen, und die beiden Hauptzeichen, an die sich sowohl Google als auch Bing halten, sind:

  • Dollarzeichen ($), das dem Ende einer URL entspricht
  • Asterisk (*) ist eine Platzhalterregel, die eine beliebige Zeichenfolge darstellt.

Beispiele für Musterabgleich bei Semetrical:

 Disallow: */searchjobs/*

Dadurch werden alle URLs blockiert, die den Pfad von /searchjobs/ enthalten, z. B.: www.example.com/searchjobs/construction. Dies war für einen Kunden erforderlich, da der Suchbereich seiner Website gesperrt werden musste, damit Suchmaschinen diesen Bereich der Website nicht durchsuchen und indizieren würden.

 Disallow: /jobs*/full-time/*

Dadurch werden URLs blockiert, die einen Pfad nach /jobs/ gefolgt von /full-time/ enthalten, wie z

www.example.com/jobs/admin-secretarial-and-pa/full-time/

. In diesem Szenario benötigen wir Vollzeit als Filter für UX, aber für Suchmaschinen muss eine Seite nicht indexiert werden, um „Berufsbezeichnung“ + „Vollzeit“ zu berücksichtigen.

 Disallow: /jobs*/*-000-*-999/*

Dadurch werden URLs blockiert, die Gehaltsfilter enthalten, wie z

www.example.com/jobs/city-of-bristol/-50-000-59-999/

. In diesem Szenario brauchen wir Gehaltsfilter, aber es war nicht nötig, dass Suchmaschinen Gehaltsseiten crawlen und indizieren.

 Disallow: /jobs/*/*/flexible-hours/

Dadurch werden URLs blockiert, die flexible Arbeitszeiten und zwei Facettenpfade dazwischen enthalten. In diesem Szenario haben wir über die Keyword-Recherche festgestellt, dass Benutzer möglicherweise nach Standort + flexible Arbeitszeiten oder Job + flexible Arbeitszeiten suchen, die Benutzer jedoch nicht nach „Stellenbezeichnung“ + „Standort“ + „flexible Arbeitszeiten“ suchen würden. Eine Beispiel-URL sieht so aus

www.example.com/jobs/admin-secretarial-and-pa/united-kingdom/flexible-hours/

.

 Disallow: */company/*/*/*/people$

Dadurch wird eine URL blockiert, die drei Pfade zwischen Unternehmen und Personen enthält, sowie die URL, die auf Personen endet. Ein Beispiel wäre

www.example.com/company/gb/04905417/company-check-ltd/people

.

 Disallow: *?CostLowerAsNumber=*

Diese Regel würde einen Parameterfilter blockieren, der die Preisgestaltung anordnet.

 Disallow: *?Radius=* Disallow: *?radius=*

Diese beiden Regeln haben Bots daran gehindert, eine Parameter-URL zu crawlen, die den Suchradius eines Benutzers geändert hat. Es wurde sowohl eine Groß- als auch eine Kleinschreibungsregel hinzugefügt, da die Website beide Versionen enthielt.

Dinge, die Sie bei der robots.txt beachten sollten

  • Bei der robots.txt wird zwischen Groß- und Kleinschreibung unterschieden, daher müssen Sie in Ihren Regeln die richtige Groß- und Kleinschreibung verwenden. Zum Beispiel wird /hello/ anders behandelt als /Hallo/.
  • Damit Suchmaschinen wie Google Ihre robots.txt schneller zwischenspeichern, um neue Regeln zu finden, können Sie die robots.txt-URL in der Search Console überprüfen und eine Indexierung anfordern.
  • Wenn Ihre Website auf eine robots.txt mit einer Reihe von Regeln angewiesen ist und Ihre robots.txt-URL über einen längeren Zeitraum einen 4xx-Statuscode liefert, werden die Regeln ignoriert und die blockierten Seiten würden indexierbar. Es ist wichtig sicherzustellen, dass immer ein 200-Statuscode bereitgestellt wird.
  • Wenn Ihre Website nicht verfügbar ist, stellen Sie sicher, dass die robots.txt-Datei einen 5xx-Statuscode zurückgibt, da Suchmaschinen verstehen, dass die Website wegen Wartungsarbeiten nicht verfügbar ist, und sie zu einem späteren Zeitpunkt wiederkommen, um die Website erneut zu crawlen.
  • Wenn URLs bereits indexiert sind und Ihrer Website dann eine Sperrung hinzugefügt wird, um diese URLs aus dem Index zu entfernen, kann es einige Zeit dauern, bis diese URLs gelöscht und entfernt werden. Außerdem können URLs noch eine Weile im Index bleiben, aber die Meta-Beschreibung zeigt eine Meldung wie „Eine Beschreibung für dieses Ergebnis ist wegen der robots.txt-Datei dieser Website nicht verfügbar – erfahren Sie mehr“.
  • Eine robots.txt-Disallow-Regel garantiert nicht immer, dass eine Seite nicht in den Suchergebnissen erscheint, da Google aufgrund externer Faktoren wie eingehender Links dennoch entscheiden kann, dass sie relevant ist und indexiert werden sollte.
  • Wenn Sie eine Verbotsregel eingerichtet haben und außerdem ein „Kein Index“-Tag in den Quellcode einer Seite einfügen, wird das „Kein Index“-Tag ignoriert, da Suchmaschinen nicht auf die Seite zugreifen können, um das „Kein Index“-Tag zu entdecken.
  • Eine Verbotsregel auf indizierten Seiten, insbesondere solchen mit eingehenden Links, bedeutet, dass Sie den Linkwert dieser Backlinks verlieren, die andernfalls zugunsten anderer Seiten weitergegeben würden. Aus diesem Grund ist es wichtig zu prüfen, ob Seiten Backlinks haben, bevor Sie eine Verbotsregel hinzufügen.
  • Wenn beim Schreiben einer Allow- oder Disallow-Regel der führende Schrägstrich im Pfad fehlt, wird die Regel ignoriert. Beispiel: „Nicht zulassen: Suchaufträge.

Wenn Sie mit einem unserer technischen SEO-Spezialisten bei Semetrical sprechen möchten, besuchen Sie bitte unsere Seite mit technischen SEO-Services für weitere Informationen.