我有一个Tomcat 8实例,用于发布多个Web应用程序。 和今天一样,我有一个 Spring 架构,它产生了 2 个 .war:
- 前端
- 后端
结果如下:
- http://localhost:8080/my-front-end
- http://localhost:8080/my-back-end
我想实现的是,为这两场战争找到一条共同的根本道路。这是我可以在Tomcat中做的事情吗?在JBOSS或IIS中,我可以使用"虚拟目录"的概念来实现这一点。
我的预期结果如下:
- http://localhost:8080/my-app/my-front-end (my-front-end.war(
- http://localhost:8080/my-app/my-back-end (my-back-end.war(
Tomcat文档说在名称中使用#
。
Context Name Base File Name Example File Names /foo foo foo.xml, foo.war, foo /foo/bar foo#bar foo#bar.xml, foo#bar.war, foo#bar
因此,请为您的战争文件使用这些名称:
my-app#my-front-end.war
my-app#my-back-end.war
分别设置上下文路径:/my-app/my-front-end 和/my-app/my-back-end。
例如,如果您使用的是 Spring Boot,则放置:
server.contextPath=/my-app/my-front-end
和
server.contextPath=/my-app/my-back-end
在应用程序属性文件中。
如果您无法修改应用程序的源代码,您可以在此处了解如何配置 Tomcat 以获得相同的结果。