tomcat部署应用的几种方式
接着上篇 tomcat配置详解,再来学习下如何在tomcat下部署应用
1.部署方式
第一种,最常用,直接把WAR包或者文件夹直接放到webapps目录下面,这时访问路径就是WAR包或者文件夹的名称。
如果想要context为空,即以http://localhost:8080/ 形式访问,只要将WAR包重命名为ROOT.WAR或者将文件夹重命名为ROOT
ps:webapps其实是Host节点appBase属性的值,相对路径是相对于$CATALINA_BASE的,即$CATALINA_BASE/webapps,也可以配置为其他的值,或者一个绝对路径,这样那个目录下的WAR包或者文件夹都会在Tomcat启动时被自动发布
第二种, 在host节点下增加一个Context节点,一个Host节点可以包含多个Context节点。
<Context path="/test" docBase="test"/>其中path就是Context,如果要配置根目录,只有设置path=””;docBase就是文件夹名称或者是WAR包名,如果是相对路径,则是相对于它所在Host节点的appBase
ps:不要将docBase指向webapps下的某个WAR或者文件夹,这样可能会导致应用被多次发布;这种方式发布应用,需要重启Tomcat才能生效
我修改了默认的server.xml,
<Host name="localhost" appBase="myapps"
unpackWARs="false" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="/test" docBase="assetmgmt"/>
</Host>
发现http://127.0.0.1:8080/assetmgmt/或http://127.0.0.1:8080/test/ 都能访问,出现这种情况是由于assetmgmt.war放在了myapps下导致项目被重复部署
第三种,在conf\Catalina\localhost下面添加test.xml,
<?xml version="1.0" encoding="UTF-8"?>
<Context path="" docBase="C:\Users\du\Desktop\to\apache-tomcat-6.0.43_manage\assetmgmt.war" >
</Context>
这样就能通过http://127.0.0.1:8080/test/ 访问了
这种方式其实是在$CATALINA_BASE/conf/{enginename}/{hostname},默认是$CATALINA_BASE/conf/Catalina/localhost下面添加一个{context}.xml,这样就使用这个xml的文件名作为项目path:http://127.0.0.1:8080/{context}/访问,如果{context}有多层,则用#间隔,例如a#b#c.xml,就用http://127.0.0.1:8080/a/b/c/访问
ps:path不用指定,同样也不能把war包放在{hostname}的{appBase}下,不用重启Tomcat部署就能生效
第四种,直接登录tomcat 管理控制台:http://localhost:8080/,使用tomcat manager发布
2.其它部署配置
1.如果想只启动一个tomcat,使用不同端口提供服务,只要增加Service节点并相应改动相关值,
<Service name="Catalina1">
<Connector connectionTimeout="20000" port="" protocol="HTTP/1.1" redirectPort="8443"/>
<Engine defaultHost="localhost" name="Catalina1">
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">
<Context path="/test" docBase="test"/>
</Host>
</Engine>
</Service>
2.如果一个站点配置多个应用,可以同过增加host虚拟主机的方式实现
<Host appBase="aaa" autoDeploy="true" name="www.aaa.com" unpackWARs="true"
xmlNamespaceAware="false" xmlValidation="false">
<Context path="/test" docBase="test"/>
</Host> <Host appBase="bbb" autoDeploy="true" name="www.bbb.com" unpackWARs="true"
xmlNamespaceAware="false" xmlValidation="false">
<Context path="/test" docBase="test"/>
</Host>
这样www.aaa.com:8080/test的访问实际是访问$CATALINA_BASE/aaa/test的访问,而对www.bbb.com:8080/test的访问实际是对$CATALINA_BASE/bbb/test的访问
参考文章:
tomcat部署应用的几种方式的更多相关文章
- 1.tomcat部署项目的几种方式和weblogic部署方式及一点通讯
第一种部署方式: 直接使用myeclipse 找到server服务 添加要部署的项目Add Deployment ,然后选中某个项目,首选Exploded Archive(development ...
- 关于tomcat部署应用的三种方式
关于tomcat部署应用虽然不是一个经常的操作,因为一旦选择了一种部署方式,我们其他的应用就会不经大脑的使用这种既定模式, 如果不使用这种部署方式,但是对于其他的部署方式不是很清楚的话,很容易抓瞎,所 ...
- 【JavaEE】tomcat部署项目的几种方式 .
一.静态部署1.直接将web项目文件件拷贝到webapps 目录中 Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JSP程 ...
- Tomcat部署项目的三种方式
目录 1.下载 Tomcat 服务器 2.启动并部署 Tomcat 服务器 3.Tomcat 的目录结构 4.部署项目的第一种方法(项目直接放入 webapps 目录中) 5.部署项目的第二种方法(修 ...
- Tomcat 部署项目的几种常见方式
转自:https://www.cnblogs.com/yuht/p/5714624.html https://www.cnblogs.com/ysocean/p/6893446.html Tomcat ...
- 在Tomcat下部属项目三种方式:
在Tomcat下部属项目三种方式: 1直接复制: 2. 通过配置虚拟路径的方式 直接修改配置文件 写到tomcat/conf/server.xml 找到<H ...
- Tomcat部署项目的几种常见方式
以前学习的时候只知道在Eclipse或者MyEclipse中发布项目到Tomcat,最近实习时发现不同的项目还有不同的发布方式,所以特地学习了Tomcat发布项目的方式,在此记录下来. 1 直接将we ...
- 在Linux安装配置Tomcat 并部署web应用 ( 三种方式 )
系统版本:centos6.5版本 java版本:1.7 一.准备工作 1.java -version 检查是否有java环境,没有则需要去安装并配置到环境变量中. 2.下载tomcat包,下载地址:h ...
- Java Web开发中用Tomcat部署项目的三种方法
第一种方法:在tomcat中的conf目录中,在server.xml中的,<host/>节点中添加: <Context path="/hello" docBase ...
随机推荐
- 使用PowerDesigner 设计SQL Server 数据库
工具: Sybase PowerDesigner 12.5 Microsoft SQL Server 2005 第一步:概念数据模型 打开PowerDesigner 软件,设计“概念数据模型”(Co ...
- NodeJs 开源
iwebpp.io - 运行P2P Node.js web 服务,穿透防火墙,NAT https://github.com/InstantWebP2P/iwebpp.io pm 是一个轻量级的Node ...
- 5个让人激动的Java项目
每个Java/JVM领域的技术专家都应从那些项目中获益,他们中有2011在SanJose举办的Jax 会议中提名为最好的技术产品奖的.我之所以选择它们,是因为它们可以广泛用于一系列的项目中,解决真实问 ...
- HTTPS 升级指南
上一篇文章我介绍了 HTTP/2 协议 ,它只有在 HTTPS 环境才会生效. 为了升级到 HTTP/2 协议,必须先启用 HTTPS.如果你不了解 HTTPS 协议(学名 TLS 协议),可以参考我 ...
- mark标签:
mark元素表示页面中需要突出或高亮显示的内容,在搜索结果中也常常出现,比如检索结果中的关键词高亮显示. 案例:[html]<!DOCTYPE HTML><html> & ...
- SpringMVC+Spring+Hibernate+Maven+mysql整合
一.准备工作 1.工具:jdk1.7.0_80(64)+tomcat7.0.68+myeclipse10.6+mysql-5.5.48-win322. 开发环境安装配置.Maven项目创建(参考:ht ...
- [iOS基础控件 - 6.12.4] NavigationController vs TabBarController
A.属性 1. Item NavigationController: navigationItem (不需要创建) title rightBarButtonItems/ rightBarButtonI ...
- 语义Web和本体开发相关技术
在技术实现方面,语义Web和本体理论的研究日趋成熟,已经有许多成熟的工具或程序接口,诸如Jena.OWL API等API是系统实现的关键技术.这里介绍系统的可行性分析以及系统开发设计的关键技术. 1 ...
- JPA project Change Event Handler问题解决[转]
转至:http://my.oschina.net/cimu/blog/278724 这是Eclipse中的一个GUG: Bug 386171 - JPA Java Change Event Handl ...
- 深度剖析WordPress主题结构(转)
利用强大的技术,可以把基于wordpress的网站做成各种各样的形式,这除了要求wordpress主题开发人员精通html,PHP,JS,CSS等技术,还需要开发者掌握WordPress主题的框架. ...