Not logged in. · Lost password · Register
Forum: Non-English Discussion German discussion RSS
Farms und robots.txt
Avatar
LGeyer #1
Member since Jul 2011 · 338 posts · Location: Kaiserhammer, Germany
Group memberships: Members
Show profile · Link to this post
Subject: Farms und robots.txt
Wir verwenden eine Farm, um die Dokumentation zu verschiedenen Versionen unserer Software zu ermöglichen. Damit sollen Anwender älterer Versionen direkt auf die Doku ihrer Version zugreifen können und die Dokumentation zu einer neuen Version geschrieben werden können, ohne die aktuelle Doku zu ändern.

Wie kann ich erreichen, dass das Indexieren aller Animals außer einem bestimmten unterbunden wird?

Lothar Geyer
Avatar
Michaelsy #2
Member since Jun 2015 · 969 posts · Location: Düsseldorf, Germany
Group memberships: Members
Show profile · Link to this post
Damit sollen Anwender älterer Versionen direkt auf die Doku ihrer Version zugreifen können und die Dokumentation zu einer neuen Version geschrieben werden können, ohne die aktuelle Doku zu ändern.
Gutes Konzept!

Wie kann ich erreichen, dass das Indexieren aller Animals außer einem bestimmten unterbunden wird?
Grundsätzlich gilt: wenn keine robots.txt vorhanden ist, dann soll voll indexiert werden.

Wenn man die Folgende robots.txt anlegt, dann soll nichts indexiert werden:

# Ganze Site von der Indexierung ausschliessen:
User-agent: *
Disallow: /

Das hat bei mir bisher immer funktioniert.

Unterscheiden sich bei dir die einzelnen Animals durch eine andere Subdomain? (Grübel: geht das überhaupt anders?)
By Patreon.com a few eurons can be fed into the code phasers of
the DokuWiki engine. Besides, Andi's posts are worth reading.
Avatar
LGeyer #3
Member since Jul 2011 · 338 posts · Location: Kaiserhammer, Germany
Group memberships: Members
Show profile · Link to this post
Wie das mit den robots.txt geht, ist mir schon klar. Aber bei einer Farm habe ich ja nur ein "Main-Verzeichnis" auf dem Server und damit nur eine robots.txt. Die Animals sind ja irgendwo in einem anderen Verzeichnis und bestehen nur aus den Verzeichnissen conf und data.

Unsere Animals sind verschiedene Sub-Domains:
- doku.software.de
- doku2.software.de
- doku3.software.de
Alle Domains verweisen auf das selbe Verzeichnis.
(software.de ist nicht unsere Domain!)

In Verzeichnissen gesprochen:

- tm_wiki ist die DW-Installation
- tm_farm ist die Farm
- tm_farm/doku ist aktuelles Animal
- tm_farm/doku3 ist das neue Animal
usw.

Wenn dann die Version freigegeben wird, brauche ich nur die entsprechenden Definitionen bzw. Verweise ändern.

Lothar Geyer
Avatar
Michaelsy #4
Member since Jun 2015 · 969 posts · Location: Düsseldorf, Germany
Group memberships: Members
Show profile · Link to this post
Alle Domains verweisen auf das selbe Verzeichnis.

Daraus schließe ich: Egal welche Subdomain der Bot aufruft, er trifft immer auf ein- und dieselbe robots.txt

Wenn dem so ist, dann wird man wohl in dieser robots.txt einen eigenen Eintrag pro Subdomain machen müssen. Bzw. die Subdomaines z.B. durch geeignete Platzhalter gruppiert ansprechen. So etwa in der Art: ...doku00*.software.de...  ...doku01*.software.de...

Aber wenn es hier nur um eine Ausnahme geht, dann dürfte es meiner Erfahrung nach ausreichen, erst einmal den kompletten Zugriff zu negieren, um dann am Ende von robots.txt die eine Ausnahme zu defineren, die die Gesamt-Zugriffssperre punktuell wieder invertiert.

Wenn du das hinbekommen und ausgetestet hast (ist natürlich ein sehr langwieriger Prozess), dann bitte das Ergebnis hier posten...

HTH - Michael Sy.
By Patreon.com a few eurons can be fed into the code phasers of
the DokuWiki engine. Besides, Andi's posts are worth reading.
Avatar
LGeyer #5
Member since Jul 2011 · 338 posts · Location: Kaiserhammer, Germany
Group memberships: Members
Show profile · Link to this post
Quote by Michaelsy:
Alle Domains verweisen auf das selbe Verzeichnis.

Daraus schließe ich: Egal welche Subdomain der Bot aufruft, er trifft immer auf ein- und dieselbe robots.txt


Davon gehe ich auch aus. Aber ein Crawler arbeitet mit anderen Server-Requests als ein "normaler" Leser. Da sind aber mein Kenntnisse des http-Protokolls zu gering.

Quote by Michaelsy:
Wenn dem so ist, dann wird man wohl in dieser robots.txt einen eigenen Eintrag pro Subdomain machen müssen. Bzw. die Subdomaines z.B. durch geeignete Platzhalter gruppiert ansprechen. So etwa in der Art: ...doku00*.software.de...  ...doku01*.software.de...

Aber das mit den Sub-Domains bekommt der Crawler ja (meiner Meinung nach) gar nicht mit. Jede Animal-Domain wird ja vom Server auf das selbe Farm-Verzeichnis umgeleitet. Dass die Seiten-Daten dann unter einer bestimmten "physikalischen" Adresse (=Verzeichnis) liegen, macht DW intern. Außer der Crawler würde direkt auf das Dateisystem zugreifen. Aber dann käme er zu gar keinen Daten, nur zum DW-Code.

Quote by Michaelsy:
Aber wenn es hier nur um eine Ausnahme geht, dann dürfte es meiner Erfahrung nach ausreichen, erst einmal den kompletten Zugriff zu negieren, um dann am Ende von robots.txt die eine Ausnahme zu defineren, die die Gesamt-Zugriffssperre punktuell wieder invertiert.

Unabhängig davon, dass die robots.txt nur im Hauptverzeichnis (in unserem Fall also der Farm) liegen kann (siehe oben): eine "Allow"-Angabe gibt es nicht, nur ein "Disallow".

Quote by Michaelsy:
Wenn du das hinbekommen und ausgetestet hast (ist natürlich ein sehr langwieriger Prozess), dann bitte das Ergebnis hier posten...

Erstens: Im Moment keine Zeit. Zweitens muss ich mir erst mal überlegen, wie so etwas zu testen ist.
Wird also sicher etwas dauern ...

Lothar Geyer
Avatar
Michaelsy #6
Member since Jun 2015 · 969 posts · Location: Düsseldorf, Germany
Group memberships: Members
Show profile · Link to this post
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. Wichtig ist, sich zu vergegenwärtigen, dass er jede robots.txt, die er in einer von deinen Animals vorfindet, für eine eigene bzw. andere 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.
By Patreon.com a few eurons can be fed into the code phasers of
the DokuWiki engine. Besides, Andi's posts are worth reading.
This post was edited 3 times, last on 2018-05-09, 17:45 by Michaelsy.
Avatar
Michaelsy #7
Member since Jun 2015 · 969 posts · Location: Düsseldorf, Germany
Group memberships: Members
Show profile · Link to this post
Ein "Allow" gibt es auch explizit, wie man z.B. hier sehen kann:

http://www.performics.de/blog/allow-oder-disallow-robots-t…

Hallo Lothar,

ich helfe ja ganz gerne (vor allen denen, die nach uns diese Disk hier lesen), aber ein biss'erl öfter könntest du dich auch mal an Onkel Google wenden.

Nichts für ungut...

Michael Sy.

Nachtrag: Die entsprechende Google-Spec weist "Allow" ganz explitit aus.
By Patreon.com a few eurons can be fed into the code phasers of
the DokuWiki engine. Besides, Andi's posts are worth reading.
This post was edited on 2018-05-10, 05:57 by Michaelsy.
Avatar
LGeyer #8
Member since Jul 2011 · 338 posts · Location: Kaiserhammer, Germany
Group memberships: Members
Show profile · Link to this post
Quote by Michaelsy:
Ein "Allow" gibt es auch explizit, wie man z.B. hier sehen kann:

http://www.performics.de/blog/allow-oder-disallow-robots-t…

Das ist aber nur für einen speziellen Tester bzw. Crawler machbar. Im englischen Wikipedia steht das auch: Some major crawlers support an Allow directive ( https://en.wikipedia.org/wiki/Robots_exclusion_standard )

Quote by Michaelsy:
ich helfe ja ganz gerne (vor allen denen, die nach uns diese Disk hier lesen), aber ein biss'erl öfter könntest du dich auch mal an Onkel Google wenden.

Nichts für ungut...

Wie Du siehst, versuche ich mich schon zu informieren. Und: ich bin nicht so schnell eingeschnappt. Keine Angst.

Lothar Geyer
Avatar
Michaelsy #9
Member since Jun 2015 · 969 posts · Location: Düsseldorf, Germany
Group memberships: Members
Show profile · Link to this post
Das ist aber nur für einen speziellen Tester bzw. Crawler machbar.

Tja, zur Wahrheit gehört aber leider ja auch: Wenn wir's für Google hinkriegen, dann reicht's ja wohl schon auf unserem Niveau - nicht wahr? - leider!

Wenn's mit dem Browsershot funzt, dann kann man ja warten, was nach einigen Tagen (/Wochen?) Google dazu sagt.
By Patreon.com a few eurons can be fed into the code phasers of
the DokuWiki engine. Besides, Andi's posts are worth reading.
Avatar
andi (Administrator) #10
User title: splitbrain
Member since May 2006 · 3500 posts · Location: Berlin Germany
Group memberships: Administrators, Members
Show profile · Link to this post
Eine eigene robots.txt pro animal ließe sich via rewrite rules sicherlich hinbiegen, würde dann aber Konfiguration pro vhost benötigen (mir fällt jedenfalls auf Anhib nix cleveres allgemein funktionierendes ein).

Der Vorschlag von Michaelsy geht nicht, weil eine robot.txt sich immer auf die Domain bezieht von der sie ausgeliefert wird. Man kann keine sub-domain spezifischen Regeln festlegen (es sei denn ich irre mich grundsätzlich).

Aber für was du erreichen willst, muss es vielleicht nicht unbedingt eine robot.txt haben. Du könntest für deine Animals die du nicht in google haben willst mal versuchen einfach die indexdelay Funktion zu missbrauchen. Mal hochdrehen auf ein Jahr oder so.
Read this if you don't get any useful answers.
Lies dies wenn du keine hilfreichen Antworten bekommst.
Avatar
Michaelsy #11
Member since Jun 2015 · 969 posts · Location: Düsseldorf, Germany
Group memberships: Members
Show profile · Link to this post
Quote by andi:
Der Vorschlag von Michaelsy geht nicht, weil eine robot.txt sich immer auf die Domain bezieht von der sie ausgeliefert wird. Man kann keine sub-domain spezifischen Regeln festlegen (es sei denn ich irre mich grundsätzlich).

In der entsprechenden Google-Spec kann man sich davon überzeugen, dass du richtig liegst.

... würde dann aber Konfiguration pro vhost benötigen
Was das heißt, ahne ich allenfalls ansatzweise... (Nachtrag: Meintest du "per vhost.conf"?)

Eine eigene robots.txt pro animal ließe sich via rewrite rules sicherlich hinbiegen
Wir haben für unseren Job hier nur 2 Typen von Animals zu unterscheiden. Die eine, die indexiert werden soll und alle anderen, die dies nicht sollen.

Soweit ich das überblicke, müssten wir also nur eine einzige Umleitung definieren - nach dem folgenden Schema:

Bedingung: http://v0123.software.de/robots.txt   -->  Ergebnis: http://v0123.software.de/robots_allowed.txt

Wenn die nicht zuschlägt, wird auf die ganz normale robots.txt zugegriffen.

Das müsste man doch über die (eine farm/animal-weite) .htaccess definieren können?

Scheint mir im Prinzip einfach zu sein. Oder was mache ich hier für einen Gedankenfehler?


Wie also das umsetzen?:
Bedingung: http://v0123.software.de/robots.txt   -->  Ergebnis: http://v0123.software.de/robots_allowed.txt

Eine erste (ungetestete!) Idee, wie man das in der .htaccess umsetzen könnte:

RewriteCond %{HTTP_HOST} ^v0123.software.de$
RewriteRule ^robots.txt$     robots_allowed.txt             [R=301,L]
By Patreon.com a few eurons can be fed into the code phasers of
the DokuWiki engine. Besides, Andi's posts are worth reading.
This post was edited 8 times, last on 2018-05-10, 07:20 by Michaelsy.
Avatar
LGeyer #12
Member since Jul 2011 · 338 posts · Location: Kaiserhammer, Germany
Group memberships: Members
Show profile · Link to this post
In reply to post #8
Quote by LGeyer on 2018-05-09, 18:12:
Das ist aber nur für einen speziellen Tester bzw. Crawler machbar. Im englischen Wikipedia steht das auch: Some major crawlers support an Allow directive ( https://en.wikipedia.org/wiki/Robots_exclusion_standard )

Ergänzung: ein Allow gibt es auch wirklich, nur heißt es nicht so.

Disallow:
"Disallow: /" oder "Disallow: /xyz/" usw.

Allow:
"Disallow:"

Also ohne Angabe eines Verzeichnisses. Siehe http://www.robotstxt.org/orig.html#examples

Lothar Geyer
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
Imprint
This board is powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2015 by Yves Goergen
Current time: 2019-12-06, 08:49:07 (UTC +01:00)