.htaccessでウェブルート(トップ)アクセスをサブディレクトリ(下層)へリダイレクトさせる

このエントリーをはてなブックマークに追加

リダイレクトの方法をいつもメモするのだけど、よく忘れるので備忘録として。

今回やりたいことは http://〜/ もしくは http://〜/index.html にアクセスがあったら
http://〜/subdir/ にリダイレクトさせる。

最初は下記のようにしてみていた

Redirect temp / /subdir/

しかし、これをやると無限ループに陥ってしまうのでNG。

無限ループに陥らないように、もし /subdir があったらリダイレクトしないように設定する。

RewriteEngine On RewriteCond %{REQUEST_URI} !^/subdir RewriteRule ^(.*)$ /subdir/ [R,L]

これで、サイトのルートアクセスは全てsubdirに飛ばされる。

ちなみに、上記の場合はルート直下にindex以外を置いても全て飛ばされるはず。