2017-12-08 30 views
1

アプリケーションでは、すべてのユーザーをindex.phpから開始します。だから私はすべての直接URLをこのファイルに他のページにリダイレクトしたい。すべてのURLをindex.phpに書き換える方法.htaccess

次の構文を使用すると、存在しないファイルのみが書き換えられますが、既存のURLもリダイレクトします。

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA] 
+1

'RewriteCond'を削除しますか? – apokryfos

答えて

3

RewriteCond %{REQUEST_FILENAME} !-fは意味:このファイルが存在しない場合は、のRewriteRuleを適用します。

RewriteCond %{REQUEST_FILENAME} !-dは意味:このディレクトリが存在しない場合は、のRewriteRuleを適用します。

用途:

RewriteEngine on 
RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA] 

EDIT:

RewriteEngine on 
RewriteCond %{REQUEST_URI} !^/index.php 
RewriteRule ^(.*)$ /index.php/?path=$1 [NC,L,QSA] 

あなたはURLが/index.phpで始まるまだ、この余分な条件を使用していない場合にのみ、リダイレクトしたい場合

+0

ありがとうございます。これは正常に動作しますが、一度動作させることは可能ですか?エントリがindex.phpであれば、他のすべてのurlのvia deメニューよりもうまく動作します。私はすべてのユーザーがindex.phpを強制的に開始するようにしたい。 – Paulus

+0

更新版の私の編集を見てください:) – dbrekelmans

関連する問題