2016-12-12 7 views
0

は、それがindex2.phpを持っているために発生した場合、むしろ、そのファイルを実行することができます、しかしindex.phpApacheの設定ファイル、.htaccessファイル、複数のインデックスページ

RewriteRule ^(.*)$ index.php [QSA] 

を言うことができます。つまり、index2.phpが存在する場合は、デフォルトの動作よりも優先されます。

RewriteRule ^(.*)$ index2.php [QSA] 
RewriteRule ^(.*)$ index.php [QSA] 

をしかしindex2.phpのdoesntが存在する場合、それはあまりにも

RewriteRule ^(.*)$ index2.php [L] 
RewriteRule ^(.*)$ index.php [L] 

このように失敗します。だから私はこれを書くでしょう。 Index2.phpは存在する必要はありませんが、index.phpは常にあります。

答えて

1

条件を追加して、index2.phpが存在する場合にのみRewriteRuleを適用できます。

RewriteCond %{DOCUMENT_ROOT}/index2.php -f 
RewriteRule ^(.*)$ index2.php [QSA,L] 
+0

禁止:このサーバーにアクセスする権限がありません。 –

+1

'L'フラグも追加する必要があります。 '%{DOCUMENT_ROOT}/index2.php'は正しいパスですか? – Federkun

+0

breaking:イメージに適用されるため、デザインが壊れています。ファイル拡張子で例外を定義する方法はありますか? –

関連する問題