Hello,正在用tomcat的同行们,经过一段时间的使用,写下一些部署应用的心得,也有一些不明白的地方,希望大家指教!

刚一接触tomcat的时候很容易的部署上的jdk1.6和tomcat6,但是上传目录,虚拟主机这些地方一直弄不清楚,到处问别人发现身边明白其原理的人了了无几,毕竟运维懂java原理的少,什么connector、appBASE、什么java类,一听就头晕。直到有一天老总让我上传一个项目的时候遇到了难题。

一个文件夹放到webapps下 重启tomcat不能访问 于是调整目录 修改server.xml重新定义一个<host> 把localhost干掉 默认主机换名字 于是成功了 但是总感觉不对劲。推荐看下边的第二种方法,好使的话别忘了顶一下!!!

我做的第一种上传应用项目的方法: 

     <Engine name="Catalina" defaultHost="pingan">

      <Host name="localhost"  appBase="webapps"

            unpackWARs="true" autoDeploy="true"

            xmlValidation="false" xmlNamespaceAware="false">

 

      </Host>

      <Host appBase="webapps" autoDeploy="false" liveDeploy="false" name="pingan">

<Context docBase="pingan/" path="" workdir="work/Catalina/pingan/_"></Context>

<Logger className="org.apache.catalina.logger.FileLogger" prefix="test_log." suf

fix=".txt" timestamp="true"/>

      </Host>

    </Engine>

这样就能直接访问你的应用了

 

 

后来发现在tomcat默认的页面有部署的选项和管理的界面

首先要修改

vim /usr/local/tomcat6/conf/tomcat-users.xml

tomcat6

<?xml version='1.0' encoding='utf-8'?>

<tomcat-users>

  <role rolename="tomcat"/>

  <role rolename="role1"/>

  <role rolename="manager"/>

  <role rolename="admin"/>

  <user username="tomcat" password="tomcat" roles="tomcat"/>

  <user username="both" password="tomcat" roles="tomcat,role1"/>

  <user username="role1" password="tomcat" roles="role1"/>

  <user username="admin" password="admin"  roles="admin,manager"/>

</tomcat-users>

 

tomcat7

 

<tomcat-users>

 

    <role rolename="tomcat"/>

    <role rolename="role1"/>

    <role rolename="manager"/>

    <role rolename="admin"/>

    <role rolename="admin-gui"/>

    <role rolename="admin-script"/>

    <role rolename="manager-gui"/>

    <role rolename="manager-script"/>

    <role rolename="manager-jmx"/>

    <role rolename="manager-status"/>

    <user username="name" password="name" roles="admin,manager,role1,tomcat,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status" />

 

</tomcat-users>

 

 第二种上传应用项目的方法:

Engine不动 default还是localhost

更改localhost下的host标签

 <Host appBase="webapps" autoDeploy="true" liveDeploy="true" name="localh

ost">

<Context docBase="pingan/" path="" workDir="work/Catalina/localhost/_"></Context

>

日志这些不动

</Host>

 

直接拷贝上传文件到webapps下即可

webapps下其他文件都可以使用

http://192.168.1.123:8081/manager

http://192.168.1.123:8081/test

 

感觉对tomcat稍微熟悉一点 在tomcat的manager页面

webapps下新建个文件夹可以部署 例如/webapps/test/index.html

但是还不知道如何在tomcat的manager页面部署应用直接到webapps下,因为有的时候开发给你的需要上传的文件必须放到webapps下,WEB-INF里边的web.xml不知道怎么设定的 放到下一级目录就不能打开 具体通过页面部署的方法不清楚 不管怎么样 目的实现了!