tomcat的server.xml中有两个连接器

时间:2011-11-30 19:28:16

标签: java tomcat port connector server.xml

我有两个Web应用程序,我希望在一个tomcat实例下运行,但是在不同的端口上连接,例如第一次战争 - 在8080以下,第二次--8090。是否可以只使用两个server.xml中的连接器?

因此要连接到第一个应用 - 我会使用地址http://localhost:8080/myFirstApp,然后使用地址http://localhost:8090/mySecondApp。 如果不在localhost上运行两个tomcat内容,我怎么能这样做呢?

3 个答案:

答案 0 :(得分:3)

好吧,我认为您可以使用不同的端口声明两个连接器,它们将正常运行。但您无法通过配置限制对应用的访问。也就是说 - 两个端口都可以访问这两个应用程序。如果您需要限制,请创建一个检查并返回404的Filter

答案 1 :(得分:2)

运行两个连接器没有问题。

但是,如果您希望每个应用程序都可以在不同的端口上访问,并且只在那里(不在两个/所有端口上),请复制conf / server.xml中的服务部分,更改端口和名称,以便不会发生冲突。

您必须为两个服务指定不同的webapps目录,并将每个Web应用程序放在不同的目录中。

答案 2 :(得分:2)

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

  

现在让我们假设我们要更改此配置,以便这样做   而不是为每个收到的请求接收两个响应   无论是连接器,我们都希望每个连接器从其传递请求   仅端口到一个特定的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>