Tomcat的Server.xml中的两个连接器
-
26-10-2019 - |
题
我有两个Web应用程序,我想在一个tomcat实例下运行,但是在其他要连接的端口上,例如第一次战争 - 在8080下,第二-8090。 server.xml?
因此,要连接到第一个应用程序 - 我将使用地址 http:// localhost:8080/myfirstapp 第二 - http:// localhost:8090/mysecondapp. 。如果不在Localhost上运行两个Tomcat Interstances,我该怎么做?
解决方案
好吧,我认为您可以声明具有不同端口的两个连接器,它们将正确运行。但是您无法通过配置限制对应用程序的访问。也就是说 - 两个应用程序都可以在两个端口上访问。如果您需要限制,请做一个 Filter
检查并返回404。
其他提示
运行两个连接器没有问题。
但是,如果您想在不同的端口上可以访问每个应用程序,并且仅在此处(不在两个端口上),请复制conf/server.xml中的服务部分更改端口和名称,以免发生冲突。
您必须为这两种服务指定不同的WebApp目录,并将每个WebApp都放入不同的网络应用程序中。
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>
不隶属于 StackOverflow