Christian Kruse: Umleitung in .htacess

Beitrag lesen

Hallo pl,

Warum einfach, wenn es auch kompliziert geht. Diese Lösung hätte ich mir sofort gewünscht:

RewriteEngine On
RewriteRule ^$ - [L]
RewriteCond %{REQUEST_URI} ^.(.*)$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/ [L,R=302]

Sie funktioniert tadellos.

Bei mir schlägt da die Regel RewriteRule ^$ - [L] zu und da das Flag [L] gesetzt ist, werden alle weiteren Regeln ignoriert.

Nö, das stimmt nicht. ^$ trifft nur zu, wenn der String leer ist. Also in diesem Fall nur auf die Root-URL.

Ich hätte das allerdings vermutlich eher so formuliert:

RewriteCond %{REQUEST_URI} !^$
RewriteRule .* http://example.org/ [L,R=302]

Wobei das hier vermutlich auch funktionieren müsste:

RewriteRule ^.+$ http://example.org/ [L,R=302]

Hab aber leider keinen Apachen mehr um das zu verifizieren 😉

LG,
CK