Was bedeutet doppeltes Schrägstrichverzeichnis (//) in robots.txt?

503
scrapy

Sie erhalten folgende Ausgabe mit:

curl https://www.ibm.com/robots.txt 

Ich lösche viele Zeilen und halte nur einen Teil davon.

User-agent: * Disallow: // Disallow: /account/registration Disallow: /account/mypro Disallow: /account/myint  # Added to block site mirroring User-agent: HTTrack Disallow: / # 

Ich verstehe das /bedeutet root-Verzeichnis, aber was bedeutet Double-Slash- //Verzeichnis hier robots.txt?

2
Es könnte sich um einen Tippfehler handeln. Ich kann in keinem der offiziellen Robot Exclusion-Dokumente einen einzigen Verweis auf einen doppelten Schrägstrich finden. Michael Frank vor 5 Jahren 2
@MichaelFrank Typo oder eine Kodierung, die von einem automatisierten System erstellt wird, das bei Bedarf eine "robots.txt" generiert. JakeGould vor 5 Jahren 0

1 Antwort auf die Frage

1
JakeGould

Das scheint ein Fehler zu sein:

Disallow: // 

Die Sache ist, dass die robots.txtSpezifikation - wie hier umrissen - eindeutig besagt:

Beachten Sie auch, dass das Globbing und der reguläre Ausdruck in den Zeilen User-agent oder Disallow nicht unterstützt werden. Das '*' im Feld User-agent ist ein spezieller Wert, der "beliebiger Roboter" bedeutet. Insbesondere können Sie keine Zeilen wie "User-agent: bot ", "Disallow: / tmp / *" oder "Disallow: * .gif" verwenden.

Aber einige Leute behaupten, dass dies nicht der Fall ist, wie diese Website, die besagt, dass Google Pattern-Matching verarbeiten kann :

Pattern-Matching : Derzeit scheint das Pattern-Matching für die drei Hauptfächer Google, Yahoo und Live Search geeignet zu sein. Der Wert des Pattern Matchings ist beachtlich. Schauen wir uns zunächst die grundlegendsten Mustervergleiche an, indem Sie das Sternchen-Platzhalterzeichen verwenden.

Unabhängig davon //bedeutet das ein Literalverzeichnis eines Verzeichnisses, an das kein Name angehängt ist, da kein Platzhalterzeichen ( *) vorhanden ist. Und //scheint nur seltsam.

Ich vermute, es ist ein Irrtum. Ja, ein IBM-Webmaster kann Fehler machen! Ich würde aber auch vermuten, dass das robots.txtvon einem System automatisch generiert wird und irgendwie ein Pfad wie /*/in konvertiert wurde, //als der robots.txtvom System automatisch generiert wurde.

Entweder das oder der Eintrag dient speziell dazu, um zu verhindern, dass fehlerhafte URLs mit einem redundanten Schrägstrich indiziert werden. grawity vor 5 Jahren 0
@grawity Gut genug, aber ich bin mir nicht ganz sicher, was der Vorteil wäre, wenn eine URL "example.com // thing" ist, als eine ungerade Methode, um Daten von Crawlern zu verschleiern. JakeGould vor 5 Jahren 0