サブディレクトリをドキュメントルートに設定する
hogehoge/
をドキュメントルートに設定したいとき.
RewriteEngine on RewriteBase / RewriteRule ^$ hogehoge/ [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.+)$ hogehoge/$1 [L]
上記をルートディレクトリの.htaccessに書いて, サブディレクトリ以下にあるフォルダ・ファイル名とルートディレクトリ以下にあるフォルダ・ファイル名重ならなければ正常に動作する.
# !-f は存在するファイル名にはルールを適用しない # !-d は存在するディレクトリ名にはルールを適用しない
というオプションを設定しているので, もしhogehoge/works/
とworks/
が同時に存在すると, 上記を設定していてもworks/
が表示される.