2

2つのWebアプリケーションがあり、1つのTomcatインスタンスで実行したいのですが、接続するポートが異なります。たとえば、最初の戦争(8080未満)と2番目の戦争(8090)です。 server.xml?

したがって、最初のアプリに接続するには、アドレスhttp:// localhost:8080 / myFirstAppを使用し、2番目のアプリにはhttp:// localhost:8090/mySecondAppを使用します。ローカルホストで2つのTomcatインスタンスを実行せずにこれを行うにはどうすればよいですか?

4

3 に答える 3

3

2つのコネクタを実行しても問題はありません。

ただし、各アプリを異なるポートでのみアクセスできるようにする場合(両方/すべてのポートではない)、競合が発生しないようにポートと名前を変更してconf/server.xmlのサービス部分をコピーします。

両方のサービスに異なるwebappsディレクトリを指定し、各webappsを異なるディレクトリに配置する必要があります。

于 2011-11-30T19:41:48.433 に答える
3

http://www.mulesoft.com/tomcat-connector

ここで、この構成を変更して、いずれかのコネクターが受信する要求ごとに2つの応答を受信するのではなく、各コネクターがそのポートから1つの特定のWebアプリケーションにのみ要求を渡すようにするとします。この機能を実現するには、要素階層を次のように再配置する必要があります。

<Server>
  <Service name="Catalina">
    <Connector port="8443"/>
    <Engine>
       <Host name="yourhostname">
          <Context path="/webapp1"/>
       </Host>
    </Engine>
  </Service>
  <Service name="Catalina8444">
    <Connector port="8444"/>
    <Engine>
       <Host name="yourhostname">
          <Context path="/webapp2"/>
       </Host>
    </Engine>
  </Service>
</Server>
于 2013-05-29T13:13:54.683 に答える
2

そうですね、ポートの異なる2つのコネクタを宣言すれば、正しく動作すると思います。ただし、構成を介してアプリへのアクセスを制限することはできません。つまり、両方のアプリが両方のポートでアクセス可能になります。それを制限する必要がある場合は、Filterそれをチェックして404を返します。

于 2011-11-30T19:33:41.243 に答える