こんにちは。
ダラシネェエンジニヤです。
たまには技術的な話も書こうか。
apacheを使ったwebサーバがあるとしよう。
グローバルのIPを仮に、
255.255.255.255
とでもしようか。こいつをDNS登録して
http://www.hogehoge.fugafuga/
とアクセスすれば255.255.255.255に繋がるようにしているとしよう。
このサーバで、 /test/ というディレクトリだけは特定の条件でのみアクセス可能とする方法を記載。
設定ファイルに以下を書きます。
<Directory "/var/www/htdocs/test">
SetEnvIf Host www\.hoge\.fuga hostAllow
Order Deny,Allow
Deny from all
Allow from env=hostAllow
</Directory>
.htaccessファイルに
SetEnvIf Host www\.hoge\.fuga hostAllow
Order Deny,Allow
Deny from all
Allow from env=hostAllow
と書くだけでもおk。
これで、hostsに
255.255.255.255 www.hoge.fuga
と設定したら、
- http://www.hogehoge.fugafuga/test/test.html にアクセスしてきた場合は403エラーとなる。
- http://255.255.255.255/test/test.html にアクセスしてきた場合は403エラーとなる。
- http://www.hoge.fuga/test/test.html にアクセスしてきた場合は正常に返ってくる。
という感じになります。
あくまで、ちょこっと制限付けたいときだけ利用する用途に留めて下さい。
セキュリティのことなんて考えてないからね!