首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果tomcat的webapps目录下有多个应用程序,如何在apache-tomcat中手动启动和停止应用程序?

如果tomcat的webapps目录下有多个应用程序,如何在apache-tomcat中手动启动和停止应用程序?
EN

Stack Overflow用户
提问于 2015-07-24 15:26:24
回答 2查看 9.7K关注 0票数 2

实际上,我在tomcat的webapps目录中有两个应用程序

代码语言:javascript
运行
复制
  webapps/hello_web1 and
  webapps/hello_web2

我想分开启动和停止这些应用程序,并使用命令行(或任何其他方式,除了使用tomcat管理器gui,以便我可以在我的程序中手动实现启动和停止功能)。

请建议我,如果这是可能的,如果这是不可能的tomcat比建议我的web服务器,它是可能的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-24 15:42:11

在Apache Tomcat中部署web应用程序有多种方法。一个是<TOMCATDIR>/conf/Catalina/localhost目录中的XML部署描述符文件。

这样的文件的内容是一个<Context...></Context>配置,可能如下所示(例如,webapp1.xml):

代码语言:javascript
运行
复制
<?xml version='1.0' encoding='utf-8'?>
<Context displayName="webapp1"
         override="true"
         path="/webapp1"
         docBase="${catalina.base}/webapps/webapp1">

         ... some context configuration ...

</Context>

如果Tomcat在此目录中找到XML文件,它将尝试部署该文件中定义的上下文。如果从该目录中删除该文件,Tomcat将取消部署web应用程序上下文。

所有这些都可以通过命令行或shell脚本来完成。

关于您的问题:您可以在此目录中放置两个上下文文件。每个web应用程序都有一个。要部署一个,只需将文件移入,要取消部署,只需将其移出目录即可。

代码语言:javascript
运行
复制
# deployment
&> cd "<TOMCATPATH>/conf/Catalina/"
&> mv webapp1.xml localhost/
  
# undeploy
&> cd "<TOMCATPATH>/conf/Catalina/localhost"
&> mv webapp1.xml ../

有关<Context...></Context>元素的更多详细信息,请参阅:The Context Container Doc Page

票数 2
EN

Stack Overflow用户

发布于 2015-07-24 15:39:21

最好的方法是使用CURL从Tomcat /manager中获取所需的命令

代码语言:javascript
运行
复制
curl --user user:pass http://localhost:8080/manager/text/<your command>?path=/<your web appl> 

您可以在此处找到命令列表https://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html

在你的情况下

启动应用程序http://localhost:8080/manager/text/start?path=/yourWebAppl

停止应用程序http://localhost:8080/manager/text/stop?path=/yourWebAppl

重新启动应用程序http://localhost:8080/manager/text/reload?path=/yourWebAppl

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31604569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档