我有一个Windows环境,该环境在三台不同的Tomcat 7.0.39应用程序服务器上运行Java应用程序,每台服务器具有不同名称的上下文根,并使用mod_jk在单个Apache HTTP 2.2.22之后。有三个具有不同域名的站点,但是用户必须使用URL /上下文(domainname1.com/context1、domainname2.com/context2、domainname3.com/context3)访问这些站点。虚拟主机在httpd-ssl.conf中配置。当前httpd.conf指定:

JkMount /context1/* worker1
JkMount /context2/* worker2
JkMount /context3/* worker3

JkMountCopy All


是否存在允许用户在未指定上下文的情况下转到URL的配置?我尝试将Tomcat webapp设置为ROOT,但无法为所有三个站点提供服务。使用mod_rewrite或mod_proxy也没有成功。我确实看到其他人也提出了类似的问题,但没有找到针对我的环境的答案。这可能吗?任何帮助将不胜感激。

最佳答案

在每个Tomcat实例中将您的Web应用程序命名为context1context2context3,并将您的httpd.conf映射更改为以下内容:

JkMount /context1|/* worker1
JkMount /context2|/* worker2
JkMount /context3|/* worker3


如果希望用户能够转到/而不是/context1,则必须在Apache httpd上使用不同的VirtualHost并将每个Web应用程序配置为每个Tomcat实例上的ROOT Web应用程序。

08-28 19:40