Meine .htaccess-Datei sieht derzeit wie dieseWas ist los mit meiner RewriteRule?
AddType x-mapp-php5 .php
Options +FollowSymLinks
Options +Indexes
RewriteEngine On
RewriteBase/
RewriteRule ^account$ /account/orders.php [L]
Als ich nach http://mywebsite.com/account
gehen, um es richtig, die Seite an http://mywebsite.com/account/orders.php
zeigt. Aber wenn ich die RewriteRule zu
RewriteRule ^account/orders$ /account/orders.php [L]
ändern und dann gehe ich zu http://mywebsite.com/account/orders
, ich Error 404 Seite bekommen nicht gefunden. Was habe ich falsch gemacht?
****** Weitere Details **
ich diagnostiziert schließlich das Problem. Aber ich verstehe nicht, warum meine Lösung funktioniert. Betrachten Sie das Szenario, in dem account/orders.php existiert.
wird die folgende Regel nicht funktioniert
RewriteRule ^account/orders$ account/orders.php [L]
Die folgende Regel
RewriteRule ^account/order$ account/orders.php [L]
Ie funktionieren., Wird die Rewrite-Regel fehl, wenn das Muster in eine vorhandene Datei auswertet. Wenn also das Muster mit der Substitution identisch ist, aber ohne die Erweiterung, schlägt die Rewrite-Regel fehl. Wenn ich eine Datei namens account/order.php hinzufüge, werden beide Regeln fehlschlagen.
Warum passiert das?
Ich habe Verwandte Pfade und absolute Pfade für beide Begriffe des rewriterule versucht. Immer noch das gleiche Problem – John