Java 如何在Tomcat 8中将多个分解的webapps(在$CATALINA_BASE/webapps之外)设置为ROOT?

Java 如何在Tomcat 8中将多个分解的webapps(在$CATALINA_BASE/webapps之外)设置为ROOT?,java,nginx,tomcat,tomcat8,Java,Nginx,Tomcat,Tomcat8,以下是我所需内容的摘要: 在Tomcat 8实例中运行多个应用程序 这些应用程序是爆炸式的(不是打包成战争),需要在/misc中/ 它们需要以根用户身份运行(即URL末尾没有上下文路径) 通过使用Tomcat的虚拟主机,我成功地将多个应用程序作为根应用程序。在/var/lib/tomcat8/conf/server.xml中,我有: <Host name="qa01" appBase="qa01" unpackWARS="tru

以下是我所需内容的摘要:

  • 在Tomcat 8实例中运行多个应用程序
  • 这些应用程序是爆炸式的(不是打包成战争),需要在/misc中/
  • 它们需要以根用户身份运行(即URL末尾没有上下文路径)
  • 通过使用Tomcat的虚拟主机,我成功地将多个应用程序作为根应用程序。在
    /var/lib/tomcat8/conf/server.xml
    中,我有:

    <Host name="qa01" appBase="qa01"
          unpackWARS="true" autoDeploy="true">
        <Alias>qa01.example.com</Alias>
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="qa01_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    </Host>
    
    到目前为止还不错,我测试了它,它肯定指向
    /var/lib/tomcat8/qa01/ROOT/index.html

    当我需要此应用程序位于
    /misc/qa01/webapps/ROOT/
    中时,问题就出现了

    我试着添加
    /var/lib/tomcat8/qa01/ROOT/META-INF/context.xml
    ,但没有成功

    <Context docBase="/misc/qa01/webapps/ROOT/">
    </Context>
    
    
    
    有人知道我做错了什么吗?

    我建议:

  • 使用Tomcat
    webapps
    目录中的软链接。指向已部署的web应用程序。假设他们遵循JavaEEServlet标准。请看这个

  • 明智地使用
    /conf/context.xml
    配置文件来管理根上下文。请阅读有关此
    context.xml
    和的更多信息


  • 找出我做错了什么(睡个好觉似乎有帮助)

    我需要在
    /var/lib/tomcat8/exampleApp/ROOT/META-INF/context.xml

    <Context path=""
            antiResourceLocking="false" />
    

    谢谢你!选项1似乎有效,但感觉有点脏,我设法找出我做错了什么。
    <Context path=""
            antiResourceLocking="false" />
    
    <Context docBase="/misc/qa01/webapps/ROOT/">
    </Context>