次のような URL 構造を持つ新しい PHP サイトの MVC パターンを実装しています。
example.com/module/controller/action?params=...
ここに私の .htaccess ファイルがあります:
Options -Indexes
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) portal.php?mvc=$1 [QSA,L]
ルールはほとんど正常に機能していますが、パブリック スペースにモジュールと同じ名前のディレクトリが?mvc=[directory name]
あり、末尾にスラッシュがない場合は URL の末尾に追加されます。
例:
example.loc/index
に変わりますexample.loc/index/?mvc=index
がexample.loc/index/
、同じままです。
ユーザーが入力した場合example.loc/index
、末尾のスラッシュが含まれている場合と同じ動作をするようにするにはどうすればよいですか?