私は現在、次の htaccess コードを使用して、すべての php 拡張機能を削除し、「index」という単語なしで /index.php ページをロードできるようにしています。これは、.php を削除するコストです。
RewriteRule ^$ index.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+[^/])$ $1.php [L]
以前はユーザーごとに新しいページを作成していましたが、お分かりのように、これはあまり良い考えではありません。したがって、すべてのユーザーページを削除し、別の方法でそれらを含めますが、要求されたページを取得パラメーターとして別のファイルに渡す必要があります。そこで、次のように、メイン レベル (/) で要求されたすべてのページを別のディレクトリ内のファイルにルーティングすることにしました。
RewriteRule ^([^/]+)$ some/page.php?requested_page=$1 [L,QSA,NC]
しかし、誰かが次のように要求した場合、/index.php ページでは機能しません: /
コードを次のように変更しました。
RewriteRule ^(<?!)([^/]+)$ some/page.php?requested_page=$1 [L,QSA,NC]
そして今、「/」リクエストは機能し、実際に存在するページはすべて機能しますが、「偽のユーザーページ」は機能しません。両方できる方法はありますか?