Hallo,
Meine .htaccess-Datei sieht folgendermaßen aus:
1 RewriteEngine On
2 RewriteCond %{REQUEST_FILENAME} !-f
3 RewriteCond %{REQUEST_FILENAME} !-d
4 RewriteRule ^(.)$ /index.php?page_url=$1
5 RewriteRule ^(.)/$ /index.php?page_url=$1 [L]
ich habe mir erlaubt, die Zeilen zu numerieren - und ich ahne schon beim Ansehen dieser Direktiven, wo das Problem liegt.
> xyz.de/u15 --> "u15" (wird vom Server automatisch zur URL "xyz.de/u15/" mit abschließendem Slash umgewandelt)
> xyz.de/impressum --> "impressum"
> xyz.de/impressum/ --> "/index.php"
Ja, logisch. Der Pfad impressum/ mit abschließendem Slash passt ja auch auf das Muster ^(.\*)$ in Zeile 4: Anfang des Ausdrucks, dann beliebig viele beliebige Zeichen, dann Ende des Ausdrucks.
> Wie kriege ich es nun hin, dass trotz des angehängten Slashs an eine URL kein Fehler ausgegeben wird, sondern die richtige page\_url?
Ich würde Zeile 4 und 5 tauschen, so dass das Suchmuster mit Slash am Ende zuerst abgeprüft wird.
So long,
Martin
PS: Hat es einen Grund, dass du Apache-Code als HTML markierst?
--
Nicht jeder, der aus dem Rahmen fällt, war vorher im Bilde.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(