サブディレクトリをドキュメントルートに設定する
April 14, 2014【注意】
- 古いブログの記事 “サブディレクトリをドキュメントルートに設定する - think with code” から移行したものです。
- 投稿日時表記は当時のままになっています。
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/
が表示される.
Updated: March 16, 2021