详细描述在Tomcat部署web项目的方式

一、

最简单的方式,就是把web项目直接放到tomcat的webapps目录下,tomcat会自动管理这个目录下的所有应用;

估计是 tomcat 的 conf 下 server.xml文件中配置了这样一段,默认主机就是加载这个webapps目录,所以可以自动加载:

可以直接放web应用文件,也可以放web应用的war包,tomcat启动时,会自动解压war包;

注意:这种方式部署的web应用,映射的虚拟目录就是文件名称:比如放置了一个名为 myWeb 的web应用,那么访问地址就是

http:localhost:8080myWeb....。
二、

在tomcat 的 conf 下 server.xml文件中配置:

找到上面图片的标签,这个代表主机,一个站点名称,http:localhost 就是这个标签的name属性值,

在这个标签下添加一个节点:

其中path是虚拟路径(访问这个web资源时输入的地址:http:localhost:8080xxxx),docBase是web应用程序的物理路径,workDir是这个应用的工作目录,存放运行是生成的于这个应用相关的文件;

reloadable:如果希望Catalina监视/WEB-INF/classes/和/WEB-INF/lib下面的类是否发生变化,在发生变化的时候自动重载web application,设为true。这个特征在开发阶段很有用,但也大大增加了服务器的开销。因此,在发布以后,不推荐使用。但是,你可以使用Manager应用在必要的时候触发应用的重载。

这种方式的缺点是添加之后,web应用不能自动加载,必须重新启动服务器才能生效,这在生产环境就不是很实用。
三、

在tomcat 的 conf 目录下的 context.xml文件中部署:

这种方式配置的web应用将被所有web应用程序共享。

四、

在tomcat 的confCatalinalocalhost 目录下:

新建一个context.xml.default的文件,在文件中配置:

节点;这种方式配置也会被所有web应用程序共享。

五、

在tomcat 的confCatalinalocalhost 目录下:

新建任何一个xml文件,在文件中配置context元素:

这种方式配置的web应用会被自动加载,不需要重启服务器,推荐使用;

且context元素中的path不需要指定,因为映射路径名就是xml文件的名称,比如MyWeb.xml,那么就相当于

path配置为/MyWeb。如果需要指定多级目录,比如想这样访问http://localhost:8080/a/b....,那么xml的文件名就这样配置:

a#b.xml,那路径就会映射为a/b。

补充:

当启动tomcat后,可以访问http://localhost:8080,此时并没有指定访问哪个web应用,那么为什么会出现首页?

是因为tomcat有默认的web应用,如果你想自己指定默认web应用,那么可以这样做:

也是在tomcat 的confCatalinalocalhost 目录下新建ROOT.xml文件,在文件中配置自己的web应用;

或者是在conf/server.xml文件中的《host》元素中配置一个《context》节点web应用(第二种方式),path="";也是指定默认的web应用。

六、

在META-INF下的context.xml文件中配置

原文地址:https://www.cnblogs.com/yds1314/p/13991494.html