操作前,先来了解一下Tomcat的目录结构。
(适用于Tomcat 6.0,Tomcat7.0)
Tomcat下有7个目录,分别是bin,conf,lib,logs,temp,webapps,work 目录,现在对每一目录做介绍。
Tomcat根目录在tomcat中叫<CATALINA_HOME>,
1.<CATALINA_HOME>/bin: 存放各种平台下启动和关闭Tomcat的脚本文件。
2.<CATALINA_HOME>/lib: 在lib目录下的lib目录,存放Tomcat服务器和所有web应用都能访问的JAR。
3.<CATALINA_HOME>/work: Tomcat把各种由jsp生成的servlet文件放在这个目录下。
4.<CATALINA_HOME>/temp: 临时活页夹,Tomcat运行时候存放临时文件用的。
5.<CATALINA_HOME>/logs: 存放Tomcat的日志文件。
6.<CATALINA_HOME>/conf: Tomcat的各种配置文件,最重要的是server.xml。
7.<CATALINA_HOME>/webapps: Tomcat的主要Web发布目录,默认情况下把Web应用文件放于此目录。
1.war包部署:
将需要发布的web应用打成war文件,(例如:ROOT.war) 拷贝到<CATALINA_HOME>/webapps下,
启动Tomcat,
如果是ROOT.war,直接通过http://ip:port/即可访问
如果是xxxx.war,可通过http://ip:port/xxxx/访问
2.目录部署:
通过在server.xml中新建Context,部署一个JSP应用程序。
打开<CATALINA_HOME>/conf/server.xml文件,在Host标签内建一个Context,内容如下。:
<Context path="/xxxx" reloadable="true" docBase="D:myapp" workDir="D:myappwork"/>
其中path是虚拟路径,docBase是JSP应用程序的物理路径,workDir是这个应用的工作目录,存放运行是生成的于这个应用相关的文件。
启动Tomcat,可通过http://ip:port/xxxx/访问
3.重定向web应用程序的目录:
如果想在服务器上运行一个以上的Tomcat实例,公用一个Tomcat发行版文件,
或者想在升级Tomcat时,覆盖原来的配置文件,而不影响现有的web应用程序,
那么“重定向web应用程序的目录”方式部署是一个不错的选择。
假如Tomcat发行版安装路径是:/opt/Tomcat/,
Web应用名为aubapp,
在/srv/下建立目录aubapp
在/srv/aubapp/下建立目录webapps,work,temp,conf
将/opt/Tomcat/conf/下的所有内容,拷贝到/srv/aubapp/conf/下,
采用方案1,将war包拷贝到/srv/aubapp/webapps/下,
或者方案2,修改/srv/aubapp/conf/server.xml文件制定应用路径
编写启动脚本start.sh,我习惯于将其放在/srv/aubapp/bin/下
Shell代码
- #!/bin/sh
- #设置web应用程序目录
- export CATALINA_BASE="/srv/aubapp"
- #设置Tomcat发行版安装目录
- export CATALINA_HOME="/opt/Tomcat"
- #后台启动Tomcat,并将控制台日志重定向
- nohup sh /opt/Tomcat/bin/catalina.sh run >../logs/tomcat.log 0</dev/null 2>&1 &
- #!/bin/sh
- #设置web应用程序目录
- export CATALINA_BASE="/srv/aubapp"
- #设置Tomcat发行版安装目录
- export CATALINA_HOME="/opt/Tomcat"
- #后台启动Tomcat,并将控制台日志重定向
- nohup sh /opt/Tomcat/bin/catalina.sh run >../logs/tomcat.log 0</dev/null 2>&1 & 启动后,访问方式与war包部署和目录部署一样。