2013-01-02 4 views
5

Bevor Sie mir sagen "Was haben Sie versucht", und "testen Sie dies selbst", möchte ich darauf hinweisen, dass robots.txt Updates langsam für meine Website jede Website auf Suchmaschinen, also wenn Sie theoretische Erfahrung, dass würde geschätzt werden.Kann ich robots.txt verwenden, um bestimmte URL-Parameter zu blockieren?

Zum Beispiel ist es möglich, zu erlauben:

http://www.example.com 

Und Block:

http://www.example.com/?foo=foo 

Ich bin mir nicht ganz sicher.

Hilfe?

+1

Sie könnten versuchen, einen Roboter-Emulator zu verwenden, aber mit ** leugnen ** in robots.txt bedeutet nicht, alle Roboter wird es folgen! –

Antwort

6

Nach Wikipedia „Die robots.txt-Muster werden durch einfache Teilzeichenfolge Vergleiche angepasst“ und als der GET-String eine URL ist, sollten Sie in der Lage sein, nur noch hinzufügen:

Disallow: /?foo=foo 

oder etwas mehr Phantasie wie

Disallow: /*?* 

, um alle get strings zu deaktivieren. Das Sternchen ist ein Platzhalterzeichen, so dass es mit einem oder mehreren beliebigen Zeichen übereinstimmt.

Example of a robots.txt with dynamic urls.

+0

Nur wundernd, ist es möglich, alle URLs mit '? Foo = foo' zu blockieren, nicht nur das Basisverzeichnis? – think123

+0

Sicher, wenn Sie den Schrägstrich entfernen, wird nur die Zeichenfolge irgendwo in der URL übereinstimmen. –

+1

Beachten Sie, dass der Platzhalter '*' nicht Teil der ursprünglichen robots.txt-Spezifikation ist. – unor