Zur Navigation

301-Weiterleitung mit Ausnahme von 2 Subdomains

1 Ibrahim (Gast)

Hallo Jörg,
ich habe hier einiges gelesen, nur nicht das Richtige gefunden.

Also Folgendes: Ich habe ein Webspace mit vier Domains. Alle diese Domains leite ich derzeit auf eine Domain und zwar so:

RewriteCond %{HTTP_HOST} !^www\.meineSeite\.org$
RewriteRule ^(.*)$ http://www.meineSeite.org/$1 [L,R=301]

So wird alles weitergeleitet, auch alle Subdomains usw.

Ich würde gerne zwei Subdomains nicht weitergeleitet haben wollen:
Z.B. http://admin.meineSeite.org (soll ganz normal www.meineSeite.org aufrufen, aber nicht weiterleiten) und
http://wp.meineSeite.org (Soll auf die Unterverzeichnis www.meineSeite.org/wp leiten).

Irgendwo habe ich das hier gefunden:
RewriteCond %{REQUEST_URI} !^(admin\.meineSeite\.org$
RewriteRule ^(index\.html)?$ http://www.meineSeite.org [L,R=301]

Nur das führt zu einer Internal Server error.

Hast du vielleicht ein besseres Vorschlag?

Schonmal danke im voraus.

Gruß
Ibrahim

18.01.2011 15:28

2 Ibrahim (Gast)

Hallo nochmal,
habe gerade Folgendes hier im Forum gefunden:

RewriteCond %{HTTP_HOST} !admin\.
RewriteCond %{HTTP_HOST} !^www\.meineSeite\.org$
RewriteRule ^(.*)$ http://www.meineSeite.org/$1 [L,R=301]

Das scheint zu funktionieren. Reicht das so? Und gibt es eine Möglichkeit, dass z.B. die Subdomain admin.... von Suchmaschinen nicht erfasst werden soll?

Gruß
Ibrahim

18.01.2011 15:43

3 Jörg Kruse

Der Ansatz in Beitrag 2 ist OK - du kannst beliebig viele RewriteConds hintereinander schalten und darin z.B. Ausnahmen für %{HTTP_HOST} definieren

Und gibt es eine Möglichkeit, dass z.B. die Subdomain admin.... von Suchmaschinen nicht erfasst werden soll?

Wenn da sonst auch kein Unbefugter drauf soll, würde ich einen Verzeichnisschutz impementieren. Eine Vertiefung dieser Fragestellung sollte aber in einem Extra-Thread behandelt werden ;)

18.01.2011 15:52

4 Ibrahim (Gast)

Hallo Jörg,
danke für die Antwort. Also das mit dem Verzeichnisschutz geht nicht, da die Subdomain auf die Hauptstartseite leitet... Also man erreicht ganz normal die Seite, wenn man den Subdomain eingibt... Die Subdomain ist nur für die Admins... Jeder andere kann da auch zugreifen, solange sie die Admin-Zugangsdaten nicht haben, ist ja egal... Mir geht es eher darum, DC zu vermeiden.

Gruß
Ibrahim

18.01.2011 16:03

5 Jörg Kruse

Wird unter der admin Subdomain derselbe Inhalt angezeigt oder liefert ein Script abhängig von der Domain einen anderen Inhalt aus? Im zweiteren Fall kann dann ja auch noch eine Meta-Angabe "robots" eingefügt werden, die das Indizieren untersagt.

Andernfalls kannst du aber für diese Subdomain auch noch eine andere robots.txt ausliefern:

RewriteCond %{HTTP_HOST} ^admin\.
RewriteRule ^robots\.txt$ robots-admin.txt

In der Datei robots-admin.txt verbietest du dann das Crawlen

User-agent: *
Disallow: /

18.01.2011 16:22

6 Ibrahim (Gast)

Hallo Jörg,
unter der Subdomain wird derselbe Inhalt angezeigt. Und da ich nur ein Webspace habe, einfach robots-admin.txt ins root-Verzeichnis, wo sich auch die .htaccess befindet?

18.01.2011 16:32

7 Jörg Kruse

Ja, in dasselbe Verzeichnis wie die htaccess Datei und die eigentliche robots.txt Datei (andernfalls muss der Code angepasst werden); und danach am besten auch nochmal den Inhalt der robots.txt Datei unter den verschiedenen Domains testen :)

18.01.2011 16:44 | geändert: 18.01.2011 16:45

8 Ibrahim (Gast)

Hallo Jörg,
habe da leider ein Problem.

in meinem .htaccess sieht es derzeit so aus:

RewriteCond %{HTTP_HOST} !admin\.
RewriteCond %{HTTP_HOST} !^www\.meineSeite\.org$
RewriteRule ^(.*)$ http://www.meineSeite.org/$1 [L,R=301]
RewriteRule ^robots\.txt$ robots-admin.txt

Es wird alles bis auf die Subdomain admin auf die org-Domain weitergeleitet, soweit so gut.
Wenn ich jetzt "www.meineSeite.org/robots.txt" eingebe, dann wird mir der Inhalt von robots-admin.txt angezeigt und nicht die eigentliche robots.txt. So habe ich die letzte Rule erstmal auskommentiert, weil der Inhalt des robots.txt wichtig ist... Aber DC zu vermeiden ist auch wichtig.... hmm. Was läuft da falsch?
Schonmal danke.

Gruß
Ibrahim

18.01.2011 17:14

9 Jörg Kruse

Die RewriteCond fehlt:

RewriteCond %{HTTP_HOST} !admin\.
RewriteCond %{HTTP_HOST} !^www\.meineSeite\.org$
RewriteRule ^(.*)$ http://www.meineSeite.org/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^admin\.
RewriteRule ^robots\.txt$ robots-admin.txt

Diese bestimmt, dass nur die robots.txt auf dem Host, welcher mit "admin." beginnt, umgeschrieben wird

18.01.2011 17:18

10 Ibrahim (Gast)

:) OK, ich danke dir für die tolle Hilfe! Hast mir wirklich sehr viel geholfen, jetzt funktioniert alles bestens.
Ich wünsche dir noch einen schönen abend.

Gruß
Ibrahim

18.01.2011 17:43

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]