tomcat

参考资料:
将WEB项目以war包形式部署到tomcat中

web应用目录:

这里写图片描述

Tomcat 部置方式

对Tomcat部署web应用的方式总结,常见的有以下四种:
1、【使用控制台部署】 访问Http://localhost:8080,并通过Tomcat Manager登录,进入部署界面即可。
2、【利用Tomcat自动部署】 将应用程序复制到Tomcat的 webapps路径下,Tomcat启动时将自动加载。
3、【修改Server.xml文件部署】 用UE或EditPlus打开Tomcat位于conf/server.xml的配置文件,找到以下内容:

<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
 ..... 
</Host> 

在Host之间添加如下内容:

<Context path="/Mywebapps" reloadable="true" docBase="d:Mywebapps" workDir="d:Mywebappsemp"/>

path:表示访问的路径;如上述例子中,访问该应用程序为:http://localhost:8080/Mywebapps reloadable:表示可以在运行时在classes与lib文件夹下自动加载类包 docbase:表示应用程序的地址,注意斜杠的方向“” workdir:表示缓存文件的放置地址

4、【增加自定义web部署文件(推荐使用,不需要重启Tomcat)】 在Tomcat安装目录conf/Catalina/localhost下,里面有Tomcat自带的三个应用,随意复制其中的一个XML文件,然后修改docbase指向你自己的应用程序, 并把path改名,各参数参见上第三种方法。或者你也可以自己新建一个XML文件(注意此文件名将作为Context中的path,不管文件里的path怎么设置也无效), 将以下内容复制过去,修改相应路径即可。

<Context path="/test" docBase="F:/J2EE/yazd_war_3_0" debug="0" privileged="true" reloadable="true"/> 

部署完毕后,通过http://localhost:8080/你的path名 就可以访问。

TOMCAT部署项目有3种方法:
1、直接把项目放在webapps里
2、修改conf里server.xml文件,标签中添加Context,指向项目的目录

<Context path="/axis" reloadable="true"
docBase="axis" workDir="webapps/axis/work"/>

属性解释:
path: 代表网络访问的上下文路径;
reloadable : 表示可以在运行时在 classes 与 lib 文件夹下自动加载类包;
docBase : 属性表示应用程序的路径,如 docBase=”E:\Sun\axis”;
workDir : 表示缓存文件的放置地点,可以方便跨平台移植时不用重编译。这样,应用程序就可以放到硬盘上的任意地方了。

3、在Catalina/localhost目录里,新增一个xml文件,添加一个Context内容,指向项目的目录。《《不用重启tomcat就可部署》》

<?xml version="1.0" encoding="UTF-8"?>
<!-- path:网络访问的路径
     reloadable(true):运行自动在class与lib文件夹下加载类包
     docBase:应用程序路径
     workDir:缓存文件放置的地点(方便跨平台移植时不用重编译) 
                如:workDir="webapps/axis/work"
-->
<Context path="test" 
         reloadable="true" 
         docBase="E:\app\testTomcat2" 
         workDir="E:\app\testTomcat2\work" />

优先级别为:3>2>1

第3个方法有个优点,可以定义别名。服务器端运行的项目名称为path,外部访问的URL则使用XML的文件名。这个方法很方便的隐藏了项目的名称,对一些项目名称被固定不能更换,但外部访问时又想换个路径,非常有效。

第2、3还有优点,可以定义一些个性配置,如数据源的配置等。

为了部署方便,该目录下的所有文件可以压缩为 zip 文件,再更改扩展名为 war。

二、同一Tomcat 多个端口部署不同的项目
方法1:
在tomcat 安装目录下C:/Program Files/apache-tomcat/conf找到server.xml
(1)、在结点后面增加结点,如下:

         <Service name="bm1">
        <Connector port="8081"  maxThreads="150" minSpareThreads="25" maxSpareThreads="75"      enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/>
      <Engine name="sms" defaultHost="localhost">
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
     <Host name="localhost" appBase="webapps/test" unpackWARs="true" autoDeploy="true"   xmlValidation="false" xmlNamespaceAware="false">
   <Context path="" docBase="C:/Program Files/Apache Software Foundation/Tomcat 6.0/webapps2/bookManagement" reloadable="true" workDir="D:/temp/Tomcat/test" debug="0"/>
             </Host>
         </Engine>
    </Service>
 (2)、复制webapps目录, 命名成webapps2,把另外一个项目放在目录下.把docBase属性引向该目录。
   好处:可以把多个项目部署在根目录

方法2:
使用域名的方法

<Engine name="Catalina" defaultHost="jsxymgh.3322.org">
    <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
        resourceName="UserDatabase" />
    <!--域名1 -->
    <Host name="jsxymgh.3322.org" appBase="webapps" unpackWARs="true"
        autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
        <!--默认访问 -->
        <Context path="" debug="0" docBase="/test1" reloadable="true" privileged="true"/>
    </Host>

    <!--域名2 -->
    <Host name="chinamgh.3322.org" appBase="D:/1" unpackWARs="true"
        autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
        <!--默认访问 -->
        <Context path="" debug="0" docBase="/test2" reloadable="true" privileged="true"/>

    </Host>

    <Host name="localhost" appBase="webapps" unpackWARs="true"
        autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
    </Host>

</Engine>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值