tomcat 项目发布方式

1.WEB应用的组成结构

开发web应用时,不同类型的文件有严格的存放规则,否则不仅会使web应用无法访问 还会导致web服务器自动报错。

mail:web应用所在目录(该目录自定义)   

html,jsp,css,js,文件等一般存在应用根目录下,根目录下文件外界可以直接访问。   

WEB-INF目录(Java类,jar包,web应用的配置文件存放在这个目录,该目录外界无法直接访问,由服务器直接调用)      

 classes目录存放的是Java类      

lib目录存放的是Java类运行所需的jar包      

web.xml文件   为web应用的配置文件。 web.xml是整个web应用程序最重要的配置文件,可用来配置首页。

2.虚拟目录的映射方式:
1).在配置文件目录下的server.xml添加语句。
 具体操作:在该xml的<Host>标签下写<Context path="aa" docBase="E:apps"/>即可。
 说明:aa为映射目录,E:apps为应用所在的绝对路径。假如应用为1.html
 访问方式:在浏览器输入http://localhost:8080/aa/1.html
 注意的地方:Context标签需闭合,否则tomcat可能启动不了,一闪而过,标签名,属性名得写对。


2).在配置文件目录下的Catalina目录下localhost目录下新建xml文件
 具体操作:在该文件下写<Context docBase="E: ews"/>此时就不需写
 path属性了,因为该映射目录就是xml文件名。
 访问方式同上。
 此种配置不需重启服务器。
3).让tomcat自动映射。
 tomcat服务器会自动管理webapps目录下的所有web应用,并把它映射成虚目录。换句话说
 webapps目录下的web应用,外界可以直接访问。
 访问方式:在浏览器输入http://localhost:8080/apps/1.html
 apps:为该应用所在的相对路径,不需要写webapps路径

3.配置虚拟主机

1)tomcat可以配置多个虚拟主机,只要在server.xml的host元素配置就行

<Host name="www.estore.com"  appBase="F:javaWebestore"
            unpackWARs="true" autoDeploy="true">
            
            <Context path="" docBase="WebRoot" />//配置缺省目录,路径用空串表示
      </Host>

其中name属性为主机名     appBase属性为工程所在路径

后面加了<Context>标签是因为eclipse会自动生成这个目录,所有的jsp资源都在这个目录下,配置了这个访问资源时就不用写WebRoot了

2)修改本地hosts文件,毕竟这个主机域名没有DNS注册,是不会被访问的,把主机名映射到本机地址

127.0.0.1    www.estore.com

假如在WebRoot下有如下资源,index.jsp,那么我们我们可以在浏览器输入如下地址就可以访问了,配置过主机就不用写工程名了

http://www.estore.com/index.jsp(注意的是tomcat端口要为80,这样才可以省略端口号)

3) 将index.jsp配置为网站欢迎页面,即敲入http://www.estore.com就能访问

有了前面的步骤后,我们只要省略/index.jsp就行了,只需在WEB-INF的xml文件配置下,如下所示,其实这步eclipse会自动生成对于index.jsp

<welcome-file-list>
        <welcome-file>资源名</welcome-file>

</welcome-file-list>

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>

4) 配置缺省虚拟主机

只有缺省虚拟主机才能通过IP地址访问资源,用IP地址来代替主机名

同样在server.xml里修改,具体位置如图所示

通过该博客稍微整理一下笔记

原文地址:https://www.cnblogs.com/wt20/p/5839987.html