一、静态部署
1、直接将web项目文件件拷贝到webapps 目录中
Tomcat的
Webapps目录是
Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将
JSP程序打包成一个
war包放在目录下,服务器会自动解开这个
war包,并在这个目录下生成一个同名的文件夹。一个
war包就是有特性格式的
jar包,它是将一个
web程序的所有内容进行压缩得到。具体如何打包,可以使用许多开发工具的
IDE环境,如
Eclipse等。也可以用
cmd 命令:
jar -cvf mywar.war myweb
webapps这个默认的应用目录也是可以改变。打开
Tomcat的
conf目录下的
server.xml文件,找到下面内容:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
将
appBase修改即可。
2、在server.xml中指定
在
Tomcat的配置文件中,一个
Web应用就是一个特定的
Context,可以通过在
server.xml中新建
Context里部署一个
JSP应用程序。打开
server.xml文件,在
Host标签内建一个
Context,内容如下。
在
tomcat中的
conf目录中,在
server.xml中的,
<host/>节点中添加:
<Context
path
="/hello"
docBase
="D:\ workspace\hello\WebRoot"
debug
="0"
privileged
="true">
</Context>
或者
<Context path ="/myapp" reloadable ="true" docBase ="D:\myapp" workDir ="D:\myapp\work"/>
或者
<Context path ="/sms4" docBase ="D:\workspace\sms4\WebRoot"/>
说明:
path是虚拟路径;
docBase 是应用程序的物理路径;
workDir 是这个应用的工作目录,存放运行时生成的与这个应用相关的文件;
debug 则是设定 debug level, 0表示提供最少的信息, 9表示提供最多的信息
privileged设置为 true的时候,才允许 Tomcat的 Web应用使用容器内的 Servlet
reloadable 如果为 true,则 tomcat会自动检测应用程序的 /WEB-INF/lib 和 /WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起 tomcat的情况下改变应用程序,实现热部署
antiResourceLocking
和
antiJARLocking
热部署是需要配置的参数,默认
false
避免更新了某个
webapp,有时候
Tomcat并不能把旧的
webapp完全删除,通常会留下
WEB-INF/lib下的某个
jar包,必须关闭
Tomcat才能删除,这就导致自动部署失败。设置为
true,
Tomcat
在运行对应的
webapp
时,会把相应的源文件和
jar
文件复制到一个临时目录里。
3、创建一个Context文件
在
conf目录中,新建
Catalina\
localhost目录,在该目录中新建一个
xml文件,名字不可以随意取,要和
path后的那个名字一致,按照下边这个
path的配置,
xml的名字应该就应该是
hello(
hello.xml),该
xml文件的内容为:
<Context path="/hello" docBase="E:\workspace\hello\WebRoot" debug="0" privileged="true"></Context>
tomcat自带例子如下:
<Context docBase="${catalina.home}/server/webapps/host-manager"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>
这个例子是 tomcat自带的,编辑的内容实际上和第二种方式是一样的,其中这 xml文件名字就是访问路径,这样可以隐藏应用的真实名字。
4、注意:
删除一个 Web应用同时也要删除 webapps下相应的文件夹和 server.xml中相应的 Context,还要将 Tomcat的 conf\catalina\localhost目录下相应的 xml文件删除,否则 Tomcat仍会去配置并加载。。。
二 动态部署
登陆 tomcat管理控制台: http://localhost:8080/ ,输入用户名和密码后便可管理应用并动态发布。
在 Context Path(option):中输入 /yourwebname ,这代表你的应用的访问地址。
XML Configration file URL中要指定一个 xml文件,比如我们在 F:\下建立一个 hmcx.xml文件,内容如下: <Context reloadable="false" />其中 docBase不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填,在 WAR or Directory URL:中键入 F:\hmcx即可,然后点击 Deploy按钮,上面就可以看到了 web应用程序,名字就 Context Path(option):中的名字。
如果部署
.war文件还有更加简单的方式,下面还有个
Select WAR file uploae点击浏览选择
.war文件,然后点击
Deploy也可以。