Seite 1 von 1

Server-Weiterleitung und Onkel G

Verfasst: 01.07.2007, 19:46
von ramiba
Ich habe für ein Projekt 4 Domains unter der Google die Seite erreichen kann:

1) www.Test-Domain.de
2) www.Testdomain.de
3) Test-Domain.de
4) Testdomain.de

Einmal mit WWW und ohne, einmal mit Bindestrich und ohne.
Ich möchte eine Weiterleitung einrichten über htaccess, die sollen ALLE zu
www.Test-Domain.de weitergeleitet werden.

Dass G**gle kein redirect mittels refresh mag weiß ich, aber wie siehts aus mit der htaccess-Weiterleitung. Wäre das ein Grund gekickt zu werden?


*Name geändert = Projekt noch unter strengster Geheimhaltung :-) wird aber bald veröffentlicht

Das Thema wurde bestimmt schon einige Male diskutiert bin aber trotzdem irgendwie nicht schlau draus geworden (einige werden sich bestimtm drüber aufregen) aber ich brauche einfach nur eine klare Antwort von jemandem der sich zu 100% auskennt :-)

Verfasst:
von

Verfasst: 01.07.2007, 20:00
von chris21

Verfasst: 01.07.2007, 21:15
von ramiba
ok danke für den Link, ist sehr interessant.
Ich habe jetzt mal eine htaccess-Datei erstellt aber da scheint noch ein Teil zu fehlen. Kenne mich leider mit htaccess nicht so gut aus.
Kann mir da mal jemand auf die Sprünge helfen?
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(.*)\.test-domain\.de$ [NC]
RewriteRule ^(.*)$ https://www.test-domain.de/$1 [R=301,L]

RewriteCond %{HTTP_HOST} !^(.*)\.testdomain\.de$ [NC]
RewriteRule ^(.*)$ https://www.testdomain.de/$1 [R=301,L]

jetzt brauche ich doch noch eine rule, die mir www.testdomain.de weiterleitet an www.test-domain.de (mit Strich) oder ?
Ich möchte alle Domains an www.test-domain.de weiterleiten.
Kann ich das alles auch irgendwie zusammenfassen / kann mir da jemand helfen?? bitteeeee :o

Verfasst: 01.07.2007, 21:56
von chris21
Hallo Ramiba,

Du hattest die Regel leider noch nicht ganz verstanden.

Vorausgesetzt, alle vier Domains zeigen gerade auf das gleiche Verzeichnis, und Du willst, dass nur www.test-domain.de gültig ist, d.h. die anderen umgeleitet werden, dann sieht der Code so aus:

Code: Alles auswählen

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www\.test-domain\.de$ [NC]
RewriteRule ^(.*)$ http://www.test-domain.de/$1 [R=301,L] 
Das wichtige an diesem Code ist das "!" - dieses kann man übersetzen mit "nicht". Demnach heißt die Regel übersetzt:

Wenn die aufgerufene Domain nicht www.test-domain.de heißt, leite auf www.test-domain.de um. Du siehst, aufgrund dieser "negativen" Abfrage ist es sehr einfach, da man nicht mehr die ganzen "falschen" domains eintragen muss, sondern einfach nur fragt, ob die richtige Domain abgefragt wurde oder ansonsten eben auf die richtige umleitet.

Viele Grüße

Chris

Verfasst: 01.07.2007, 22:35
von ramiba
is das geil.. :-))) daaaanke :-) jetzt hab ichs endlich :-))

ja das waren 4 domains die alle auf ein verzeichnis verweisen, habe eingebunden, jetzt klappts :-D

Verfasst: 01.07.2007, 22:50
von ramiba
@ chris21 (sorry, nochmal ganz kurz:)

wenn ich unter meiner domain eine falschen dateinamen angebe und zur 404 gelangen müsste, zeigt mir firefox folgendes an:

"Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann."

meine htaccess sieht genau so aus:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.test-domain\.de$ [NC]
RewriteRule ^(.*)$ https://www.test-domain.de/$1 [R=301,L]

ErrorDocument 402 https://www.test-domain.de/402.html
ErrorDocument 403 https://www.test-domain.de/403.html
ErrorDocument 404 https://www.test-domain.de/404.html
muss ich die rewrite engine irgendwie wieder 'schließen' ?

Verfasst: 02.07.2007, 08:07
von Ezeee
Hallo

bei uns funktioniert das hier gut. wenn du die 40x absolut angibst, kann es sein, dass der server eine 302 ausgibt, wir geben sie deshalb relativ an.

Code: Alles auswählen

RewriteEngine on
# Domain ist nicht ...
RewriteCond %{HTTP_HOST} !^www\.test-domain\.de
# Host ist nicht leer
RewriteCond %{HTTP_HOST} !^$
# umschreiben
RewriteRule ^(.*)$ http://www.test-domain.de/$1 [L,R=301]
ErrorDocument 404 /404.html
ErrorDocument 403 /403.html
ErrorDocument 402 /402.html
gruß, ezeee

Verfasst: 02.07.2007, 10:11
von chris21
@Ramiba:

gibt es denn die Datei 404.html? Wenn nicht, dann ist klar, dass das nicht funktionieren kann.

Übrigens hat Ezeee Recht, wenn er empfiehlt, die Errordokumente relativ anzugeben, da sonst ein falscher HTTP-Statuscode gesendet wird und z.B. Suchmaschinen Probleme bekommen.

Die RewriteRule ist ok, da muss nichts geschlossen werden.