Seite 1 von 1

RewriteRule wo ist mein Fehler?

Verfasst: 21.02.2005, 19:11
von Balboa
Hallo,
ich will, dass alle dateien egal ob html oder php als Verzeichnis angezeigt werden.

RewriteRule ^(.[^/]*)$ /html/$1.php
RewriteRule ^(.[^/]*)$ /html/$1.html

so funktioniert es zwar mit php dateien, bei html dateien kommt dann aber der Fehler das die php Datei nicht gefunden wurde.

Kann man beide Zeilen vielleicht irgendwie zusammen fassen?

Verfasst:
von

RewriteRule wo ist mein Fehler?

Verfasst: 22.02.2005, 17:16
von Caterham
Das geht so leider nicht... Du musst schon anhand der URL im pattern (linke Seite) differenzieren. mod_rewrite kann ja nicht ahnen, ob er bei identischem Pattern mal in die eine oder andere Regel springen soll. Da die Regeln von oben nach unten abgearbeitet werden, ist der pattern der 1. Regel immer wahr - somit ist die 2. Regel nie erreichbar.
Du könntest höchstens überprüfen, ob die Datei wirklich exsistiert.

Code: Alles auswählen

RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}$1\.php -f
RewriteRule ^([^/]+)$ /html/$1.php [L]
RewriteRule ^([^/]+)$ /html/$1.html [L]
Grüße
Robert