Problem mit mod_rewrite

Ice07

Mitglied
Hallo,

wenn ich mit dem Befehl:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.meine-seite\.de$
RewriteRule ^(.*)$ http://www.meine-seite.de/$1 [L,R=301]

die Standard-Domain festlegen will, kommt (von jeder IP) folgende Fehlermeldung:

"Umleitungs-Limit für diese Domain überschritten. Die angeforderte Seite konnte nicht geladen werden. Das kann von geblockten Cookies herrühren."

...mod_rewrite ist jedenfalls vom Hoster aktiviert.
Woran kann das liegen?


 
Diese Rule alleine sollte kein derartiges Problem verursachen, vorausgesetzt, du hast keinen Tippfehler in den Domainnamen

Sind noch andere Rules oder Weiterleitungen aktiv?
 
QUOTE (Ice07 @ Sa 17.3.2007, 13:48) RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.meine-seite\.de$
RewriteRule ^(.*)$ http://www.meine-seite.de/$1 [L,R=301]

Die Bedingung ist in meinen Augen falsch.

So müsste das klappen:

CODE
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.meine-seite.de/$ [NC]
RewriteRule ^(.*)$ http://www.meine-neueseite.de/$1 [L,R=301]
 
QUOTE (Alonso @ Sa 17.3.2007, 15:37)
QUOTE (Ice07 @ Sa 17.3.2007, 13:48) RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.meine-seite\.de$
RewriteRule ^(.*)$ http://www.meine-seite.de/$1 [L,R=301]

Die Bedingung ist in meinen Augen falsch.

So müsste das klappen:

CODE
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.meine-seite.de/$ [NC]
RewriteRule ^(.*)$ http://www.meine-neueseite.de/$1 [L,R=301]


Super, vielen Dank Alonso jetzt geht es!

Habe mich nur gewundert da es auf die 1. Art und Weise bei anderen Domains auch geklappt hat.
 
Hmm habe eben nochmal geschaut, es hat wohl nur kurz funktioniert jetzt geht schon wieder überhaupt nichts mehr (obwohl ich nach der Änderung nicht mehr dran rumgefummelt habe). Finde das alles höchst seltsam.
@Jörg Kruse: Ja es sind noch andere Weiterleitungen aktiv, habe aber diese aber schon testweise entfernt was aber nichts gebracht hat.

Hat noch jemand einen Rat?
 
QUOTE (Alonso @ Sa 17.3.2007, 14:37) So müsste das klappen:

CODE
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.meine-seite.de/$ [NC]
RewriteRule ^(.*)$ http://www.meine-neueseite.de/$1 [L,R=301]


Ein HTTP_HOST enthält IMHO kein / - demnach würde die Bedingung (wegen des !) immer zutreffen. Die Punkte würde ich auch weiterhin escapen - ohne Backslash bezeichnen sie ein beliebiges Zeichen - das funktioniert in diesem Fall zwar auch, ist aber ungenauer. Das [NC] schadet vielleicht nicht, aber ob es eine Endlosschleife verhindert, deren Ursache unbekannt ist? oder handelt es sich um einen Browser, der Kleinbuchstaben in der URL immer wieder in Großbuchstaben zurückwandelt?

Ich sehe jedenfalls nichts falsches an der ursprünglichen RewriteCond, hätte eher Bedenken wegen des Slashes in dieser Version

Edit: und es handelt sich auch nicht mehr um die Festlegung einer Standarddomain - die Rule leitet ja auf eine andere Domain weiter
 
QUOTE (Ice07 @ Sa 17.3.2007, 16:59) @Jörg Kruse: Ja es sind noch andere Weiterleitungen aktiv, habe aber diese aber schon testweise entfernt was aber nichts gebracht hat.

Hast du dabei mit der ursprünglichen Version getestet oder mit der von Alonso?

Hsat du auch Weiterleitungen übergeordneter Verzeichnisse (inerhalb des Webspaces) berücksichtigt?
 
Zurück
Oben