16.12.2008

URLs mit trailing Slash umschreiben ohne Error log message

Ich hatte das Problem bei einem meiner Projekte, dass URLs beim Umschreiben einen Fehler ins Errorlog schrieben, obwohl das Umschreiben an sich funktionierte:

[...] [error] [client 1.2.3.4] File does not exist: www/brauereien
[...] [error] [client 1.2.3.4] File does not exist: www/biere

Mein Problem, ich wollte lediglich von

http://www.bier-index.de/biere auf
http://www.bier-index.de/biere/

umschreiben und natürlich existieren die Ordner im Filesystem mal wieder nicht.

Lange Rede, kurzer Sinn... Hier die adäquate Lösung:

<IfModule mod_rewrite.c>

RewriteEngine On
AcceptPathInfo Off

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*).html
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://www.bier-index.de/$1/ [L,R=301]

</IfModule>

Das Wichtigste befindet sich zwischen RewriteBase und selbiger Rule, aber der Vollständigkeit halber einmal komplett.

Hinterlasse einen Kommentar

Dein Kommentar:

Kategorien