Seite 1 von 2

Standard-Domain mit htaccess - index.htm auch weiterleiten ?

Verfasst: 10.04.2008, 21:16
von kitaro
Hallo zusammen,

nach der Lektüre des Beitrages von Southmedia : Standard-Domain definieren mit Apache (mod_rewrite) stellen sich mir folgende Fragen:

https://meinedomain.de/ --- 301 auf--> https://www.meinedomain.de/ -- okay
https://meine-domain.de/ --- 301 auf--> https://www.meinedomain.de/ -- okay


Der Aufruf von https://www.meinedomain.de/index.htm erzeugt allerdings einen 200. (siehe HTTP-Header Check von https://www.southmedia.de/index.htm )

:arrow: Müsste der Aufruf der index.htm nicht auch via 301 auf https://www.meinedomain.de/ gehen? sowie bei https://abakus-internet-marketing.de/foren/index.php

Wie müssen dann folgende Angaben ergänzt werden, um den Aufruf der index.htm auch weiterzuleiten?

Code: Alles auswählen

RewriteEngine on 

RewriteCond %{HTTP_HOST} !^www\.meinedomain\.de$ 
RewriteRule ^(.*)$ http://www.meinedomain.de/$1 [L,R=301]
Danke für eure Antworten.

Verfasst:
von

Verfasst: 10.04.2008, 22:09
von huah
Versuchs mal hiermit:

Code: Alles auswählen

RewriteCond %{the_request} ^[A-Z]{3,9}\ /.*index\.htm\ HTTP/
RewriteRule ^(.*)index\.htm$ http://www.meinedomain\.de/$1 [l,r=301]

Verfasst: 11.04.2008, 05:40
von kitaro
Danke für deine Antwort.

Das klappt soweit ganz gut, bis auf, dass der Aufruf von index.htm ohne www nicht der richtigen Location zu gewiesen wird.


https://meinedomain.de/index.htm wird via 301 zu der Location https://www.meinedomain.de/index.htm weitergeleitet wird.

Ist das trotzdem okay oder kann man diesen einen letzen Fall auch noch in den Griff bekommen?

Verfasst:
von

Verfasst: 11.04.2008, 13:14
von huah
Du musst beide .htaccess Codes einsetzen - dachte, dass das klar wäre.

Verfasst: 11.04.2008, 13:55
von kitaro
Natürlich. Das habe ich ja auch gemacht. Deswegen ja auch:
kitaro hat geschrieben:Das klappt soweit ganz gut, bis auf, dass der Aufruf von index.htm ohne www nicht der richtigen Location zu gewiesen wird.

Verfasst: 11.04.2008, 18:10
von huah
Seltsam, es funktioniert bei mir einwandfrei:

Code: Alles auswählen

RewriteCond %{HTTP_HOST} !^www\.meinedomain\.de$
RewriteRule ^(.*)$ http://www.meinedomain.de/$1 [l,r=301]

RewriteCond %{the_request} ^[A-Z]{3,9}\ /.*index\.htm\ HTTP/
RewriteRule ^(.*)index\.htm$ http://www.meinedomain\.de/$1 [l,r=301]
meinedomain.de/index.htm wird auf www.meinedomain.de weitergeleitet.

Verfasst: 14.04.2008, 13:56
von Southmedia
Ehrlich gesagt würde ich hier keine RewriteRule einsetzen sondern einen einfachen Redirect:
Redirect permanent /index.htm https://www.southmedia.de/
Ist eigentlich immer der bessere weg wenn man keine regulären Ausdrücke braucht. Und übersichtlicher noch dazu.

PS: Genau der Code ist nun auch auf southmedia.de aktiv.

Verfasst: 14.04.2008, 17:46
von Schnipsel
@sothmedia

...irgendwie ist deine Seite momentan nicht erreichbar.

Verfasst: 14.04.2008, 18:28
von Southmedia
lol, jetzt weiß ich auch wieder wieso der Code doch nicht so dolle war ;)
Danke für den Hinweis.

Dann eben der hier.

Code: Alles auswählen

RewriteCond %{REQUEST_URI} ^/index.htm$
RewriteRule ^(.*)$ http://www.southmedia.de/ [L,R=301]
Einfach unter das Standarddomain-Ding einfügen.

Verfasst: 15.04.2008, 08:11
von kitaro
und die Tatsache das ein Aufruf von https://southmedia.de/index.htm laut Header Check per 301 auf die Location : https://www.southmedia.de/index.htm verweist stellt kein Problem da?
(in der Browserzeile hingegen erscheint alles korrekt)

Ich bin davon ausgegangen, dass die Location in dem Fall immer https://www.southmedia.de/ sein müßte?!

Bild

Verfasst: 15.04.2008, 09:57
von Southmedia
www.southmedia.de/index.htm leitet danach dann ja auf www.southmedia.de um. Man kann auch einfach die beiden Codefetzen austauschen, dann sollte die Umleitung direkt auf www.southmedia.de gehen. Dann passt es so wie du meintest.

Verfasst: 15.04.2008, 10:07
von kitaro
Super. Vielen Dank. :D

Verfasst: 16.04.2008, 08:09
von kitaro
Noch eine Frage:

Ich habe jetzt folgende htaccess am laufen:

Code: Alles auswählen

RewriteEngine on 


RewriteCond %{REQUEST_URI} ^/index.htm$ 
RewriteRule ^(.*)$ http://www.meinedomain.de/ [L,R=301]


RewriteCond %{HTTP_HOST} !^www\.meinedomain\.de$ 
RewriteRule ^(.*)$ http://www.meinedomain.de/$1 [L,R=301]
Bei fast allen Domains funnktioniert dies sehr gut.
Bei einer jedoch wird der Aufruf der Standartdomain selbst also https://www.meindedomain.de
auch mit einem 301 zu der Location https://www.meinedomain.de weitergeleitet und die Startseite ist nicht zu erreichen! Da müsste doch ein Status 200 OK richtig?

Woran kann das liegen? Ist das fatal?

Verfasst: 18.04.2008, 20:05
von chris21
Hi Kitaro:

Ändere mal den Code folgendermaßen ab:

Code: Alles auswählen

RewriteEngine on


RewriteCond %{THE_REQUEST} ^/index.htm$
RewriteRule ^(.*)$ http://www.meinedomain.de/ [L,R=301]


RewriteCond %{HTTP_HOST} !^www\.meinedomain\.de$
RewriteRule ^(.*)$ http://www.meinedomain.de/$1 [L,R=301]
Einzige Änderung ist also nur von REQUEST_URI in THE_REQUEST

Besteht das Problem dann immer noch?

Verfasst: 29.04.2008, 06:15
von kitaro
@Southmedia

Bei dir funktioniert alles wunderbar! Kannst du deine htaccess bitte nochmal veröffentlichen?


chris21 hat geschrieben:Besteht das Problem dann immer noch?
Ja - das Problem besteht noch. Die Umleitungen sehen dann folgendermaßen aus:

Code: Alles auswählen

Okay:

http://www.meinedomain.de/ ---> HTTP/1.1 200 OK

http://meinedomain.de/ --- 301 auf --> http://www.meinedomain.de/



Nicht okay:

http://meinedomain.de/index.htm --- 301 auf --> http://www.meinedomain.de/index.htm

http://www.meinedomain.de/index.htm ---> HTTP/1.1 200 OK