Christian Seiler: mod_rewrite

Beitrag lesen

Hallo gast,

Ich habe schon vieles ausprobiert, es wird aber immer ein Internal Server Error ausgegeben.

Was steht im error-log?

Was ist also hier falsch:

RewriteEngine on
RewriteBase /ordner1
RewriteRule ^/ordner1/(.*)/(.*).php$ /ordner1/index.php?lang=$1&folder=$2&file=$3

Das hier bewirkt zwar nicht das, was Du willst, jedoch produziert es auch keinen Internal Server Error bei mir.

RewriteEngine on
RewriteBase /
RewriteRule ^(.*)/(.*)/(.*).php$ index.php?lang=$1&folder=$2&file=$3

sollte das erreichen, was Du willst. Eventuell würde ich noch

RewriteEngine on
RewriteBase /
RewriteRule ^(.*)/(.*)/(.*).php$ index.php?lang=$1&folder=$2&file=$3 [QSA]

machen, damit aufrufe wie

http://www.invalid/de/foo/bar.php?hallo=ciao

auch funktionieren und in

index.php?lang=de&folder=foo&file=bar&hallo=ciao umgewandelt werden.

(im ersten fall würde lediglich index.php?lang=de&folder=foo&file=bar rauskommen)

Viele Grüße,
Christian