Tomcat 7:在 webapp 的子目录中部署一个 war 文件

Posted

技术标签:

【中文标题】Tomcat 7:在 webapp 的子目录中部署一个 war 文件【英文标题】:Tomcat 7: Deploy a war file inside sub directory of webapp 【发布时间】:2019-01-09 09:51:59 【问题描述】:

如果我们将war 文件放在tomcat 的webapps 文件夹中,那么它会在我们启动服务器时部署它,但是当我们将war 文件放在webapps 的子文件夹中时,情况并非如此. 有什么方法可以在webapps 的子目录中实现这个部署过程?

【问题讨论】:

Please use Context for deploy two sub directory @ĐứcTrầnTrung,链接共享将我重定向到线程how-to-load-large-sql-script-against-oracle-database-using-jdbc。你想分享的是同一个话题吗? 抱歉不正确,请看AutoDeploy a WAR file found in a subfolder of appBase 【参考方案1】:

在使用自动部署时,如果您希望通过 server.com/path/app 访问您的应用程序,您可以通过将您的 war 文件命名为“path#app.war”然后将其放入 webapps 目录来实现此目的。 在自动部署期间,将在“$CATALINA_HOME/webapps/”下创建一个名为“path#app”的目录,您的应用程序将可以通过所需的 URL 路径访问。

如果反向代理是 Apache HTTPD,您也可以选择将其留在原处并指示 Tomcat 前面的反向代理进行重定位,使用 ProxyPass /path/app http://tomcat-server/app ProxyPassReverse /path/app http://tomcat-server/app 规则。 ProxyPass/ProxyPassReverse 参考可用here。

【讨论】:

【参考方案2】:

我们可以更改TOMCAT_HOME/conf/server.xml中的war部署路径(应用程序基目录)。

<Host name="localhost"  appBase="webapps\your_directory"
        unpackWARs="true" autoDeploy="true">

【讨论】:

以上是关于Tomcat 7:在 webapp 的子目录中部署一个 war 文件的主要内容,如果未能解决你的问题,请参考以下文章

Solr部署到tomcat

将Eclipse项目自动部署到Tomcat的webapps目录下

idea部署项目到tomcat,tomcat webapps下没有项目

解决Eclipse EE部署web项目在Tomcat webapp目录下没有工程文件的问题

tomcat下部署应用helloworld

Spring Boot:在 Tomcat 7 上部署 WAR