gpt4 book ai didi

tomcat - 如何将多个上下文映射到 Tomcat 中的同一个 war 文件?

转载 作者:行者123 更新时间:2023-11-28 21:45:08 25 4
gpt4 key购买 nike

我正在使用 tomcat 来部署我的应用程序,我想将其部署为一个单独的 war 以应该服务器多个上下文路径。

目前我有 app1.war 和 app2.war,但两者内容相同,只是名称不同,无法通过 http:///app1 和 http:///app1.war 访问。但我想这样做,部署 app.war 并通过 app1 和 app2 上下文路径访问它。可以在tomcat中做吗?请帮我解决这个问题

最佳答案

这可以通过多种方式完成。我认为这种方式是最直接的:

  1. 将 WAR 文件移到 webapps/ 之外自动部署目录
  2. 摘录 META-INF/context.xml从你的 WAR 文件。如果你的 WAR 没有 META-INF/context.xml文件,只使用一个只有 <Context /> 的文件在里面
  3. 将此文件复制到 Tomcat 的 conf/[service]/[host]/目录为 app1.xmlapp2.xml . ([service] 通常是“Catalina”,[host] 是虚拟主机的任何名称:在默认的 Tomcat 配置中,主机名始终是“localhost”。
  4. 同时编辑 app1.xmlapp2.xml并设置 docBase <Context> 的属性元素指向您在步骤 #1 中移动的 WAR 文件
  5. 重启Tomcat

这应该会为您提供一个物理 WAR 文件和从中部署的多个上下文。

虽然 Tomcat 支持这种配置,但我建议不要这样做:磁盘空间很便宜,它在运行时不会改变任何东西(你仍然在内存中得到所有东西的两个副本),并且你失去了将不同的 WAR 文件部署到不同的上下文和/或单独更新它们而不修改两个上下文的配置。

如果您需要我的建议,请坚持使用重复的 WAR 文件。

关于tomcat - 如何将多个上下文映射到 Tomcat 中的同一个 war 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11721966/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com