Felix 234: Problem mit mod_rewrite Conditions

Beitrag lesen

Danke, hat einwandfrei geklappt. Jetzt ist mir auch klar, warum es gescheitert ist.

Gruß,
Felix

Hi Felix234!

RewriteCond %1 !^de/ [NC]
RewriteCond %1 !^en/ [NC]
RewriteRule ^(.+)$ http://irgendwas.de/de/$1 [L,R]

%[1-99] wird genutzt um Backreferences im Suchmuster der RewriteCond zu nutzen. Deine RewriteCond trifft natürlich nie zu, da %1 hier immer leer sein wird, da es keinen Suchstring gibt, auf den es sich beziehen könnte (du hast %1 selbst als Suchstring gesetzt). Stattdessen solltest du %{REQUEST_URI} nutzen:

RewriteCond %{REQUEST_URI} !^/de/ [NC]
RewriteCond %{REQUEST_URI} !^/en/ [NC]
RewriteRule ^(.+)$ http://irgendwas.de/de/$1 [L,R]

(Achtung, habe noch Slashes hinzugefügt)

Mehr zur Syntax: mod_rewrite: RewriteCond

tschau
ichen