我有两个网络应用程序,产品-1.2.1.war和测试-2.0.0.war。
如果我将它们直接放入“tomcat/webapps”文件夹,它们将被部署为;
- hXXp://localhost/prod-1.2.1/
- hXXp://localhost/test-2.0.0/
这可行,但实际上我希望它们显示为;
- hXXp://localhost/vegshop/prod/
- hXXp://localhost/vegshop/test/
如您所见,我不知何故希望将“vegshop”包含在上下文路径中。我还希望版本号消失,而无需重命名 WAR 文件。
谢谢。
这是 Linux 2.6 下的 Apache Tomcat v6.0,运行 SUN JDK 1.6。
答案1
使用 Tomcat 时,您无法/vegshop/
像希望的那样在 URL 中包含包含部分。Web 应用程序不仅仅是可以放置在任何位置的文件。使用 Tomcat, /vegshop/
可以是:
- 一个独立的 Web 应用
- webapp下的文件夹
ROOT
(如果没有 webapp,则为默认文件夹。
你能做的最好的事情就是重命名你的 .war 文件。prod-1.2.1.war
例如 vegshop-prod.war
http://localhost/vegshop/
http://localhost/vegshop-test/
如果这/vegshop/prod/
件事对你来说真的非常重要,那么我唯一会考虑的选择就是用 Web 服务器(如 Apache httpd)代理 Tomcat 并重写 URL。甚至可能有一种使用 Tomcat 编写疯狂代码的方法,但对于这种表面的改变来说,所有这些都显得有些过分。它真的那么重要吗?