首页 > 解决方案 > 如何将不同的 Tomcat 9 应用程序映射到不同的 URL?

问题描述

我有一个 Tomcat 9 服务器,上面安装了两个应用程序:“App1”和“App2”。显然,可以使用以下两个 URL 访问这些应用程序:

http://my_xyz.com/App1

http://my_xyz.com/App2

我需要能够使用 URL 访问第一个应用程序:

http://other_xyz.com/

第二个应用程序使用:

http://yet_xyz.com/

要求不要在其前面使用 Web 服务器。只应配置 Tomcat 9 服务器。

请注意,“App1”和“App2”未出现在新 URL 中。Tomcat 虚拟主机是解决方案,但如何隐藏应用程序名称?

谢谢

标签: tomcat9

解决方案


正如您在帖子中所说,您只需要:

  1. 创建两个虚拟主机:
<Host name="app1.example.com" docBase="webapps/app1.example.com">
    ...
</Host>
<Host name="app2.example.com" docBase="webapps/app2.example.com">
    ...
</Host>
  1. 一旦配置了虚拟主机,您就可以独立地将应用程序添加到每个虚拟主机。最重要的是,您可以拥有两个具有空上下文路径的应用程序(每个主机一个)。例如,您可以将第一个应用程序的 WAR 文件移动到webapps/app1.example.com/ROOT.war第二个应用程序webapps/app2.example.com/ROOT.war(或使用任何其他方式来部署应用程序)。

推荐阅读