全部Tomcat6での話。
webappsの場所を変えるには
Tomcatにのせるアプリケーションの場所を、$TOMCAT_HOME/webappsじゃない場所にしたい場合。
$TOMCAT_HOME/conf/server.xmlに、
<Host name="localhost" appBase="/foo/bar/webapps"
・・・
・・・>
というふうに、HostタグのappBase属性を設定する。
これで、$TOMCAT_HOME/webappsじゃなくて/foo/bar/webappsに置いたアプリが動く。
Tomcatを複数起動させるには
1台のマシンの中で複数のTomcatを別々の設定・ログも別々で起動させたい場合。
Tomcat起動シェルの中で、
export CATALINA_BASE=/foo/bar/tomcat
というふうに、環境変数CATALINA_BASEを設定するだけ。
すると、/foo/bar/tomcatディレクトリの中のconf・logs・temp・workが使われるようになる。
なので、
- 起動するTomcatごとにconf・logs・temp・workを用意
- で、confの中には別々の設定ファイルを用意
- 起動するTomcatごとに起動シェルを用意し、別々の$CATALINA_BASEを設定する
という感じ。
シンボリックリンクを使うときの注意点
<Context docBase="hoge" path="" reloadable="true" allowLinking="true" />
allowLinking=trueにしないと、webappsの中にシンボリックリンクを置いてても有効にならない。