代码之家  ›  专栏  ›  技术社区  ›  Aniket Thakur

Tomcat 7非自动解包战争

  •  0
  • Aniket Thakur  · 技术社区  · 7 年前

    我想将我的应用程序部署为root应用程序,因此我将war重命名为root。战争默认服务器。xml看起来像-

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
    
        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->
    
        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    
      </Host>
    

    我还需要提供一些静态内容。所以我添加了上下文标记-

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
    
        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->
    
        <Context docBase="/home/athakur/Documents/UI" path="/" />
    
        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    
      </Host>
    

    我想从这个路径提供静态内容,从我的根目录提供API。战争但只要我添加context元素ROOT。战争没有扩大和部署。当我删除上下文路径时,它会这样做。此外,UI是从路径post添加上下文标记正确呈现的。所以我也不想改变这种行为。

    1 回复  |  直到 7 年前
        1
  •  0
  •   Aniket Thakur    7 年前

    看来我们做不到。我们不能在同一主机下有两个具有相同路径和不同docBase的上下文。所以你不能-

    <Context docBase="/home/athakur/Documents/UI" path="/" />
    <Context docBase="ROOT" path="/" />
    

    所以我不得不接受

    <Context docBase="/home/athakur/Documents/UI" path="/" />
    <Context docBase="ROOT" path="/apis" />
    

    文档- https://tomcat.apache.org/tomcat-8.0-doc/config/context.html