仮想ホストというのは、1つのIPアドレスに対して複数のホスト名を割り当てて、
見かけ上のホストを増やしてしまおうという、いわば「分身の術」です。[注]
これを行うためにはJK2のみならず、Apacheのhttpd.confとTomcatのserver.xmlの変更も必要になります。
まずApache上に仮想ホストを設定するよう、httpd.confに記述します。
この例では、
http://jajakarta.ytp.ne.jp/でブラウズした時に裏Ja-Jakarta(?)のトップページが見えるように設定しています。
さらにLocationディレクティブを使って、公開してはいけないURLをDenyに設定します。
server.xmlでは、<Engine>要素配下(<Host name="localhost">要素の次)に、
仮想ホストの設定を追加します。
当たり前ですが、name属性の値は仮想ホスト名jajakarta.ytp.ne.jpにします。
最後はworlers2.propertiesです。
これは、仮想ホスト名/コンテキスト名/*
というuriマッピングを追加するだけです。
この例ではコンテキストルート配下全体をTomcatに送信する設定になっていますが、
jajakarta.ytp.ne.jp仮想ホスト上にcontikushoというコンテキストがある場合は、
[uri:jajakarta.ytp.ne.jp/contikusho/*]という設定を追加します。
|
httpd.conf |
NameVirtualHost 192.168.0.1
<VirtualHost 192.168.0.1>
ServerAdmin webmaster@ytp.ne.jp
DocumentRoot "/opt/jajakarta"
ServerName jajakarta.ytp.ne.jp
ErrorLog logs/jajakarta-error.log
CustomLog logs/jajakarta-access.log common
<Directory "/opt/jajakarta">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
# I don't wanna show.
<Location "/WEB-INF/*">
AllowOverride None
Deny from all
</Location>
# I don't wanna show.
<Location "/META-INF/*">
AllowOverride None
Deny from all
</Location>
</VirtualHost>
|
server.xml |
<!-- jajakarta.ytp.ne.jp Virtual Host -->
<Host name="jajakarta.ytp.ne.jp" debug="0"
unpackWARs="true" autoDeploy="true">
<Logger
className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="jajakarta." suffix=".log"
timestamp="false"/>
<!-- Context Root -->
<Context path="" docBase="/opt/jajakarta" debug="0"
reloadable="true" crossContext="false">
</Context>
</Host>
|
workers2.properties |
[uri:jajakarta.ytp.ne.jp/*]
info=Map http://jajakarta.ytp.ne.jp/
|
|