conf/server.xml
に複数のホスト・タグを指定した場合、サーブレット・コンテキストは2回ロードされます。それはベースのWebアプリケーションです。私は春を延長してContextLoader
とそれをカスタマイズしています。サーブレット・コンテキストの読み込みを2回実行しました
私のserver.xml(Tomcatの7.0.22)
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/mnt/databank/logs/tomcat7"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" resolveHosts="false"/>
</Host>
<Host name="domain.com" appBase="webapps/Domain"
unpackWARs="true" autoDeploy="true"
>
<Context path="" docBase="."/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/mnt/databank/logs/tomcat7"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" resolveHosts="false"/>
<Context docBase="/mnt/databank/posters" path="/Domain/posters"/>
<Context docBase="/mnt/databank/advertisement" path="/Domain/advertisement"/>
<Context docBase="/mnt/databank/star" path="/Domain/star"/>
</Host>
<Host name="www.domain.com" appBase="webapps/Redirecter"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="."/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/mnt/databank/logs/tomcat7"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" resolveHosts="false"/>
</Host>
私は任意の助けをいただければ幸い、次のように二回trigering
2011-10-21 12:11:22,933 ERROR [Thread-2] c.i.b.u.DomainUtilInitializer [DomainUtilInitializer.java:38] Init Method Triggered
2011-10-21 12:11:46,621 ERROR [Thread-15] c.i.b.u.DomainUtilInitializer [DomainUtilInitializer.java:38] Init Method Triggered
をContextLoaderでログを追加しました。
私は2つのアプリケーションを持っています。私はこのTomcatに両方を展開したいと思います。そのうちの1つは登録されたドメイン名を解決する必要があります。他にはコンテキストパスを使用してアクセスする必要があります。 3番目のホストは、SSLナビゲーションを修正することです。私たちはhttp://domain.comとしてドメインを登録しています。リクエストがwww.domain.comから来た場合、ブラウザにセキュリティリスクが表示されます。 www.domain.comをdomain.comにリダイレクトする別のアプリケーションを導入しました。ユーザーは混乱することはありません。 – sunnychayen