Seite 1 von 1

gibt es auch allow für die robots.txt Anweisung?

Verfasst: 11.03.2010, 00:09
von Thomas B
Ich habe einmal eine bescheidene Frage.

Den Boot kann man ja mehr oder weniger mit einem "disallow" in der robots.txt aussperren.

Kann man das eigentlich auch so machen:

User-agent: *
Disallow: /
Allow: example.html

So dass erlaubt wird, die explizit ausgewiesene Seite zu spidern?

Verfasst:
von

Verfasst: 11.03.2010, 00:29
von Alda
Aua, ich geh da mal mit fundiertem Nichtwissen dran...

Alles was Du mit "Disallow" explizit ausschließt ist weg, da geht er nicht mehr ran.und wenn Du zuerst das Hauptverzeichnis komplett ausschließt wird (blanke Vermutung) der Rest nicht mehr abgearbeitet, weil es danach nichts mehr abzuarbeiten gibt.

Verfasst: 11.03.2010, 00:30
von luzie
Njet!

Das geht nicht. Zwar akzeptiert Google "allow", aber nur global, so:

Allow : /

Was du in robots.txt auf "disallow" setzt, bleibt verboten, ein globales "disallow" ("disallow" ist die einzig wirklich vorgesehene Anweisung - Robots Exclusion Standard) kannst du nicht durch ein spezifisches "allow" wieder aufheben.

Re: gibt es auch allow für die robots.txt Anweisung?

Verfasst: 11.03.2010, 00:32
von chris3
Thomas B hat geschrieben: User-agent: *
google soll sich wohl nur daran halten, wenn man
"User-agent: Googlebot"
schreibt. es ist wohl schonmal öfters beobachtet worden, daß sich google nicht immer daran hält, wenn nur "User-agent: *" benutzt wird.

Verfasst: 11.03.2010, 00:34
von Thomas B
Danke für die Infos.

Re: gibt es auch allow für die robots.txt Anweisung?

Verfasst: 11.03.2010, 09:09
von Mork vom Ork
Thomas B hat geschrieben:Kann man das eigentlich auch so machen:

User-agent: *
Disallow: /
Allow: example.html

So dass erlaubt wird, die explizit ausgewiesene Seite zu spidern?
Das funktioniert aus zwei Gründen nicht:
1. URL-Pfade beginnen immer mit einem Schrägstrich, deine Angabe example.html wird dementsprechend nie zutreffen.
2. Die robots.txt wird standardmäßig von oben nach unten abgearbeitet, der erste Treffer wirkt. Dein Disallow: / passt auf alles, nachfolgende Allow:- und Disallow:-Zeilen werden nicht mehr beachtet.

Was du unterm Strich haben möchtest, ist dieses:

User-agent: *
Allow: /example.html
Disallow: /

Damit wird /example.com ausgelesen und alles andere gesperrt.

Zu Punkt 2 ist allerdings anzumerken, dass Google sich nicht an die althergebrachte Methode hält, sondern stattdessen zuerst alle Allow:-Zeilen auswertet, anschließend alle Disallow:-Zeilen. Mit deiner Reihenfolge würde es bei Google also doch so laufen, wie du möchtest; nichtsdestotrotz solltest du dich an den Standard halten.

Die Behauptung, Google würde Allow: nur mit / gelten lassen, ist übrigens falsch (und macht auch keinen Sinn). Nicht nur ich habe die Kombination Allow abc, Disallow abcde im Einsatz – abc ist im Index, abcde nicht, wie gewünscht –, sondern auch noch andere.
Gleiches gilt für die Aussage, „google soll sich wohl nur daran halten, wenn man "User-agent: Googlebot"“ nutzt. Ist auch nicht richtig.

Verfasst: 11.03.2010, 11:40
von net(t)worker
jo,

das mit dem Allow, zur freischaltung eines Teilbereiches eines vorherigen Disallow kann funktionieren, muss aber nicht, da es nicht zum allgemeinen Standard der robots.txt gehört... aber das trifft ja auf die wildcards wie * auch zu

Verfasst: 11.03.2010, 17:23
von Mork vom Ork
net(t)worker hat geschrieben:das mit dem Allow, zur freischaltung eines Teilbereiches eines vorherigen Disallow kann funktionieren
Nein, bitte andersrum, erst mit Allow freigeben, dann mit Disallow sperren. Diese Richtung schon immer Regel.