tomcat详细部署之我见

来源:互联网 发布:内存专业测试软件 编辑:程序博客网 时间:2024/04/30 15:05

转自:http://blog.csdn.net/miqi770/article/details/2109805

版本:tomcat5.5.17

要求:使用http://localhost时,可以直接访问自己开发的项目(项目名比如:xm)

准备动作(注意):
 当你使用以下方法一或方法二之前一定要做好准备动作。
 原因:在Tomcat 5.5/server/webapps目录下会有tomcat自带的两个项目(manager,host-manager),
 当tomcat安装好后,开启服务,就可以直接访问了,比如使用
http://localhost/manager时就可以访问了.
 如果你自己开发的项目xm中有一个目录manager(Tomcat 5.5/webapps/xm/manger/xxx.jsp),
 这时当访问xm项目的manager目录下的内容时,你会发现浏览器中显示是Tomcat 5.5/server/webapps/manager/下的内容,即tomcat自带的manager项目的内容!
 这时冲突就产生了.所以我建议不管有没有同名的manager目录,都要把tomcat自带的项目删掉(我是这样处理,不知道还有什么其他的方法解决冲突).
 
删除tomcat自带的项目方法:
  1 删除Tomcat 5.5/server/webapps/下所用内容
  2 删除Tomcat 5.5/conf/Catalina/localhost/下的同名的配置文件(如果只删除项目,不删除配置文件,tomcat启动时会报错)

方法一:目录映射

 <Context path="" docBase="xm"
        debug="5" reloadable="true" crossContext="true">
 </Context>
 
 以上标签内容是把Tomcat 5.5/webapps/xm项目在url中映射为空,也就是直接输入ip(localhost)就可以访问.
 docBase属性后面还可以写绝对路径.
 
 这段代码编写在server.xml中
 <Context path="" docBase="safety"
        debug="5" reloadable="true" crossContext="true">
 </Context>
    </Host>(host结束标签上面)
 
 注意:在tomcat中对每个单独的项目的目录映射配置可以写在Tomcat 5.5/conf/Catalina/localhost/下的同名的配置文件(xm.xml)
 xm.xml中就编写
 <Context path="" docBase="xm"
        debug="5" reloadable="true" crossContext="true">
 </Context>
 可是我发现当path="" 时,使用
http://localhost访问,责直接跳到Tomcat 5.5/webapps/ROOT项目了(我试了多次,都是这样).
 当path="XXX" 时,path属性不为空时,使用
http://localhost/XXX访问 就好用.
 
 这样使用eclipse发布xm到tomcat,使用
http://localhost时,可以直接访问自己开发的项目,并且使用http://localhost/xm时,也可以直接访问自己开发的项目.
 
方法二: ROOT目录

 准备工作做好后,不用修改server.xml.
 使用eclipse发布xm到tomcat
 把ROOT目录删掉,把xm重命名ROOT
 使用
http://localhost时,可以直接访问自己开发的项目
 
注意:
两种方法不要混用,否则脑子肯定混乱,而且不好管理.
当配置jndi时,建议使用方法一.端口的修改大家都会.


0 0