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:\news"/>此时就不需写
 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:\javaWeb\estore"
            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里修改,具体位置如图所示

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

tomcat 项目发布方式的更多相关文章

  1. tomcat项目发布 更改小猫图标 及自定义错误404界面

    tomcat发布项目的时候遇到些小问题 不过解决了 问题1. 整个服务器的404自定义界面问题 解决方法: 在tomcat安装目录下conf中web.xml中修改配置文件 <error-page ...

  2. Tomcat 项目部署方式

    方法一:在Tomcat中的Conf目录中,在Server.Xml中的,<Host/>节点中添加: <Context Path="/Hello"Docbase=&q ...

  3. Tomcat项目部署方式

    一.静态部署 1.直接将web项目文件件拷贝到webapps 目录中      Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JS ...

  4. Javaweb Tomcat 项目部署方式

    一.静态部署 1.直接将web项目文件件拷贝到webapps 目录中     Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JSP ...

  5. docker化php项目发布方式

    在生产环境的部署中将源代码打包到镜像以docker镜像的方式发布,并且运行环境中同时包含nginx和php-fpm用脚本或者supervisor管理服务进程,这样生产服务器将不需要任何依赖,只需要安装 ...

  6. 黑马tomcat学习day01 tomcat项目部署方式 1.webapps方式 2.Context元素方式

  7. 如何修改Tomcat的默认项目发布路径

    tomcat默认的项目发布目录是/webapp/ROOT,如果想自定义发布目录,应该怎么办呢? 修改配置文件 首先,修改$tomcat/conf/server.xml文件. 在server.xml文件 ...

  8. TOMCAT下面发布项目的4种方式

    摘要 TOMCAT下面发布项目的4种方式,可用于在平时资料查询. 第一种方法: 将web项目文件件拷贝到webapps 目录中:或者直接通过Eclipse发布到Tomcat上. 第二种方法: 在tom ...

  9. CentOS下安装JDK,Tomcat,Redis,Mysql,及项目发布

    上传文件到服务器,安装lrzsz , 可以将本地的文件上传到linux系统上. 如果是CentOS则可以用yum install lrzsz 命令安装,更方便. 或:yum -y install lr ...

随机推荐

  1. golang开发集训营

    初识golang Go与VScode开发工具 Golang开门见山

  2. Redis数据持久化

    持久化选项 Redis提供了两种不同的持久化方法来将数据存储到硬盘里面.一种方法叫快照(snapshotting),它可以将存在于某一时刻的所有数据都写入硬盘里面.另一种方法叫只追加文件(append ...

  3. 201621123008 《Java程序设计》第一周学习总结

    1. 本章学习总结 对于我们学计算机的学生而言,要想提高编程能力,只有多练习,把我们所学到的东西运用到实践中去,整天抱着书本冥思苦想而不动手到具体的环境中去试验是很难有所提升的.大一学C语言的时候平时 ...

  4. MySQL 开启远程访问权限

    1.登陆mysql数据库    mysql -u root -p 查看user表 mysql> use mysql;Database changedmysql> select host,u ...

  5. Vue-cli 配置开发环境让测试服务器监听所有IP

    //config/inex.js // Various Dev Server settingshost: '0.0.0.0', // can be overwritten by process.env ...

  6. Jmeter通过BeanShell Sampler获取Jmeter的Bin路径,并存入变量供后面的脚本调用

    Jmeter的Bin路径是其运行路径,当把自动化测试的脚本放在Bin目录下时,为了将存储CSV的数据文件以及脚本的路径都设置成相对路径,我们需要获取到Jmeter的运行路径: 通过BeanShell ...

  7. sigint sigterm 有什么区别啊

    SIGHUP     终止进程     终端线路挂断SIGINT     终止进程     中断进程SIGQUIT   建立CORE文件终止进程,并且生成core文件SIGILL   建立CORE文件 ...

  8. CentOS 6.5 搭建cuda环境

    首先这一篇文章是我搞了N多天后,才成功一点经验,为了不至于下次搭建时忘记,所以记录下来.nivida官网有一个文档,大家可以下载看一下 https://developer.nvidia.com/cud ...

  9. 2018.07.04 POJ 3304 Segments(简单计算几何)

    Segments Time Limit: 1000MS Memory Limit: 65536K Description Given n segments in the two dimensional ...

  10. 着重基础之—MySql Blob类型和Text类型

    着重基础之—MySql Blob类型和Text类型 在经历了几个Java项目后,遇到了一些问题,在解决问题中体会到基础需要不断的回顾与巩固. 最近做的项目中,提供给接口调用方数据同步接口,传输的数据格 ...