Ich denke, du bist noch ein gutes Stück weit weg, die Sache, so wie du dir das wünscht, umsetzen zu können. Denn zur "Sichtweise" des Crawlers: Der hat im Grunde dieselbe Sichtweise, wie jeder normale Browser-Besucher auch. Von anderen Verzeichnissen oder sonsteiner Struktur weiß der nichts. Nur die "Struktur", die er über die URLs gezeigt bekommt. (Das ist ja genau das "Problem", was man durch die Kanonisierung von URLs "verarztet".) Plus natürlich seinem Zugriff und seine Auswertung von
robots.txt[/m]. Wichtig ist, sich zu vergegenwärtigen, dass er jede [m]robots.txt[/m], die er in einer von deinen Animals vorfindet, für eine eigene bzw. andere [m]robots.txt hält. Da er sie über eine andere URL adressiert bzw. gezeigt bekommt.
... eine "Allow"-Angabe gibt es nicht, nur ein "Disallow".
Doch, gibt es, zumindest implizit. In meinem Beispiel hier, wird etwa nur einem einzigen, bestimmten Anfrager "gestattet", "zuzugreifen": (Da er sich sonst weigert.) (Eine von mir produktiv/real eingesetze
robots.txt , von der ich daher auch weiß, dass sie funktioniert.)
# ---------------------------------------------------------
# Ganze Site von der Indexierung ausschliessen:
User-agent: *
Disallow: /
# ---------------------------------------------------------
# Damit aber dennoch Browsershots.org (Browsertest-Seite) einen Zugriff hat (bzw. diesen nicht verwehrt):
User-agent: Browsershots
Disallow:
# ---------------------------------------------------------
Zweitens muss ich mir erst mal überlegen, wie so etwas zu testen ist.
Browsershots.org ließe sich ganz prima als Dummy-Test-Crawler missbrauchen, da dieser Service sofort zurückmeldet, ob er zugreifen kann (bzw. genau genommen natürlich "möchte".)
HTH - Michael Sy.