Webサーバーが以下のようなディレクトリ構成だとする。
var
└ www
└ html
│
├ project
│ │
│ ├ .htaccess ←社外IPアドレスからのアクセスを拒否
│ │
│ └ htdocs ←ルートにしたいディレクトリ
│ ├ index.html
│ └ ...
│
└ project.com -> project/htdocs ←ルートへのシンボリックリンク
その際、Apacheでドキュメントルートを以下2通りで設定したとする。
-
/var/www/html/project/htdocs
のようにルートを直接指定 -
/var/www/html/project.com
のようにルートへのシンボリックリンクを指定
このどちらも、http://ドメイン名/
でindex.htmlを表示することができる。
しかし、2に関しては問題があり、ルートより上の階層にある/var/www/html/project/.htaccess
が効かない。
(1は社外からアクセスできないが、2はアクセスできてしまう)
なので2の場合、htdocs以下に.htaccessを設置しなければいけない。
ちなみに、シンボリックリンクのある/var/www/html/
直下にも.htaccessを設置してみたが、こちらも効かなかった。