Können wir Regex in der robots.txt-Datei verwenden, um URLs zu blockieren?

23

Ich habe ein paar dynamisch generierte URLs.

Kann ich Regex verwenden, um diese URLs in einer robots.txt-Datei zu blockieren?

Sudheera Njs
quelle
Es wäre auch sinnvoll, Robots-Meta-Tags auf den Seiten festzulegen, die nicht gecrawlt / indiziert werden sollen.
Andrew Lott
@ AndrewLott In meinem Fall habe ich mehr als 500 Seiten, also dachte ich, ich verwende Regex in robots.txt ..
Sudheera Njs
Dann ist eine Regel in Ihrem Site-Code wahrscheinlich hilfreicher.
Andrew Lott

Antworten:

27

Reguläre Ausdrücke sind in robots.txt nicht gültig, aber Google, Bing und einige andere Bots erkennen einige Musterübereinstimmungen.

Angenommen, Sie möchten alle URLs blockieren, die eine examplebeliebige Stelle in der URL enthalten. Sie können einen Platzhalter verwenden. *

User-agent: *
Disallow: /*example

Sie können auch das Dollarzeichen $ verwenden, um anzugeben, dass die URLs auf diese Weise enden müssen. Wenn Sie also alle URLs blockieren möchten, die auf enden example, aber keine URLs, die an exampleanderer Stelle in der URL enthalten sind, können Sie Folgendes verwenden:

User-agent: *
Disallow: /*example$

Weitergehende Informationen für Google sind hier zu finden: Robots.txt Spezifikationen , hier Bing: Wie eine Robots.txt - Datei erstellen und es gibt eine interaktive Anleitung, Moz hier

Max
quelle
Perfekt, * funktioniert gut, Getestet im
Webmaster-
Ich warne davor, zu ausgefallene Direktiven in Ihrer robots.txt-Datei zu verwenden. Diese sind später wirklich, wirklich schwer zu debuggen. Versuche die Dinge so einfach wie möglich zu halten. Denken Sie auch daran, dass in robots.txt die Groß- und Kleinschreibung beachtet wird. Je nach Ihrer Site müssen Sie daher möglicherweise alternative Versionen der Anweisungen hinzufügen.
John Mueller
wäre schön, wenn Regex unterstützt wurde
SuperUberDuper