質問: .htaccessを特定のフォルダだけ無効にしたい .htaccessに以下のように書いて、 rewritecond %{the_request} ^.*/index.(html|php) rewriterule ^(.*)index.(html|php)$ http://%{http_host}/$1 [r=301,l] 「http://example.com/hoge/index.php」などにアクセスされたときにindex.phpを削除して 「http://example.com/hoge/」を表示するようにしています。 例えば、以下にアクセスすると http://example.com/aaa/index.php http://example.com/bbb/index.html http://example.com/ccc/ddd/index.php?p=1 それぞれ以下のアドレスになります。 http://example.com/aaa/ http://example.com/bbb/ http://example.com/ccc/ddd/?p=1 これを、特定のアドレス「http://example.com/tokutei/index.php」にアクセスされたときだけ、 「http://example.com/tokutei/」にせず、そのまま「http://example.com/tokutei/index.php」を表示するようにしたいのですが、 どうすれば良いでしょうか。 「http://example.com/tokutei/index.php?p=1」や「http://example.com/tokutei/index.php?p=1&a=5」などにアクセスされても そのまま表示するようにしたいです。 よろしくお願いいたします。
回答: .htacces はpath_infoの下位から順番に処理されます。 言い換えれば、下位ディレクトリ(そのファイルの存在するディレクトリ--http://example.com/tokutei/)にリセット.htaccessを書いておけば良いのでは? rewritecond や rewriteruleを使って経験はないのですが、試してみてください。