在tomcat安装好后,只要把你的web项目copy到%TOMCAT_HOME%webapp下面就可以是使用啦!!其实还有种方法就是设定虚拟目录,即把项目的目录映射到tomcat中。这样做即可以不用重复的部署,节约时间,而且给开发人员带来方便。
方法如下:
1,找到%TOMCAT_HOME%/conf/server.xml,(即tomcat的安装目录下面相关的文件)打开此xml文件,在 <host> </host>之间加入如下代码:

<Context path="" reloadable="true" debug="0" docBase="E:/workspace/test/bin" workDir="E:/workspace/test/work" crossContext="true" >
</Context>

<Context path="/test" docBase="E:/aaa" debug="0" reloadable="true"/>

docBase是实际路径,这里一般写一个绝对的磁盘路径,当然也可以写 相对路径,相对路径是相对于tomcat安装目录的webapps目录的,通常设置虚拟目录的目的是将tomcat的安装和项目的保存分开,所以这里建议你使用磁盘绝对路径,并且这个磁盘路径不时在tomcat安装目录下。workDir是tomcat运行是对JSP文件做编译后的文件,这个文件最好也是分开。
path为虚拟路径,访问时的路径,注意:一定要加“/”。值得注意的是:path可以为 "/"那么访问“IP:端口”就可以访问到布置的工程,如果为"/test",那么必须得访问“IP:端口/test”才能访问到,我建议采用第一种方法。不然访问每个工程都得有个虚拟路径,看上去不舒服。可能你会想到如果我有多个工程怎么办?是不是一定得取几个虚拟路径,如果你用一个IP的话那是肯定的。但是如果你把机器多设置几个IP,那么就行了,每个工程占用一个IP,这样层次结构更加清晰。
debug建议设置为0,reloadable设置为true。
我的习惯是将path设置为path=""因为这样可以在tomcat启动时就可以加载首页项

2,如果在测试中出现404的错误,如果前面配置没有错,可能就是在%TOMCAT_HOME%/conf/web.xml文件中把虚拟路径显示目录给禁止啦,此时可以在web.xml文件中找到
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
将listings的value改为true,然后重新启动tomcat,在输入url,测试成功!

3,如果项目开发完成,准备部署在服务器上时,记住要把第三步中web.xml文件中参数listings的值改为false,这样可以避免把项目的部署路径呈现给使用者!
具体如下:
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>

4、访问多台机器文件问题:

文件太多的时候必然需要跨目录或跨盘,这个时候就需要用到虚拟目录,但是Tomcat 不能直接跨Context 进行Forward。
例如:
用 Context 配置映射了虚拟目录 data1, 目录下有文件 123.txt
如果要在 / 下直接 forward 到 "/data1/123.txt" 是不行的,会提示 404 找不到文件。

那么就需要灵活应用Tomcat 虚拟目录映射:
在 D:/Tomcat/conf/Catalina/test 目录下(test为Server.xml配置文件中的域名) 增加 一个 xml 文件,(test要创建),创建之后加上这个样一个XML文件(这里就取名为data1.xml):
<Context docBase="//IP/data1" reloadable="false" crossContext="true" />
并且修改 Server.xml 中的 Context 允许 crossContext="true"。
那么就可以在工程中访问另外台机器上的文件(当然这个台机器需要共享访问的文件)。例如:
<img src="/data1/001/002/003.png">,来显示图片。

问题又来了,就是权限问题,共享的文件不想给任何人访问的话,就需要设置共享权限,那么就需要配置tomcat的权限:
1、在共享的机器上设置tomcat帐户和密码,并加入共享权限。
2、然后在放tomcat的服务器上,设置相同的tomcat帐户和密码。
3、在tomcat服务上配置登录账号和密码。

TOMCAT虚拟路径配置的更多相关文章

  1. 通过配置tomcat虚拟路径配置站点的静态资源

    我们常常站点中会提供给用户上传文件.图片.视频或者诸如为了提高性能生成的静态文件等存储在站点应用中.但如果静态资源文件和项目文件在同一个目录下,当我们重新部署文件时,war重新解压会导致静态资源文件的 ...

  2. 【IDEA】IDEA中配置tomcat虚拟路径的两种方法

    首先要确保使用的是本地的tomcat服务器,而不是maven插件. -------------------------第一种:使用IDEA工具自动配置(推荐这种)------------------- ...

  3. Tomcat虚拟目录配置方法及原理

    tomcat 安装好之后,只需要把你的程序包放到$Tomcat_Home$/webapps下就可以直接使用了.这样会使webapps越来越大就需要设置虚拟目录: 1.单个应用设置: 在<Host ...

  4. Linux下设置Tomcat虚拟路径

    问题描述:我在上传图片的位置不在Tomcat服务器下,用户无法访问 解决方案:配置Tomcat虚拟路径使用户可以访问图片 配置Tomcat # cd /usr/local/apache-tomcat- ...

  5. 48-设置tomcat虚拟路径的两种方法(Eclipse、tomcat、IDEA)

    设置tomcat虚拟路径的两种方法(Eclipse.tomcat.IDEA) 三种方式设置虚拟服务器路径如果我们要实现一个上传文件的功能,但是又想要上传的文件不会随着自己web服务器的重启而不能访问了 ...

  6. Tomcat虚拟路径访问本地图片失败的问题

    开发过程中,把图片放在本地一个磁盘的路径下.网上搜了下,可以使用tomcat虚拟路径访问本地图片. 这样就不用把图片放在整个项目的webapp目录下了. 1.找到tomcat的server.xml文件 ...

  7. IDEA 设置 TOMCAT 虚拟路径

    今天在使用 IDEA 配置 TOMCAT 虚拟路径时一直报错,最终解决方式整理如下: 一.使用 Tomcat 自己的虚拟路径 1.在 Tomcat9\conf 目录下找到 server.xml 文件, ...

  8. weblogic虚拟路径配置

    首发地址 https://blog.leapmie.com/archives/344/ 前言 weblogic的虚拟路径配置有两种: 一种是在项目下配置,即在weblogic.xml中配置,该方法配置 ...

  9. tomcat虚拟路径的几种配置方法

    一般我们都是直接引用webapps下面的web项目,如果我们要部署一个在其它地方的WEB项目,这就要在TOMCAT中设置虚拟路径了,Tomcat的加载web顺序是先加载 $Tomcat_home$\c ...

随机推荐

  1. css3 animate写的超炫3D转换

    上一篇中介绍了animate的基本的属性,这一篇讲的则是关于animate以及transforms的使用 <!DOCTYPE html><html lang="en&quo ...

  2. C#缓存

    最近在学习缓存的知识,博客园中的 缓存资料 觉得信息不错值得学习

  3. React安装 脚手架create-react-app安装步骤及问题

    create-react-app 是来自于 Facebook的脚手架,通过该命令我们无需配置就能快速构建 React 开发环境. 安装步骤: 1.先装脚手架     PS:第一次装直接在打开CMD默认 ...

  4. rem简单实现移动端适配

    rem:移动web开发 默认字体大小是16px 在<html>中设置字体大小 与em的区别: em是在父级设置字体大小受影响 移动端适配 首先获取屏幕的宽度 计算当前屏幕宽度和640的比例 ...

  5. C++序列化使用

    error C2248 无法访问私有成员 :原因 ifstream 作为参数必须传引用! (1):C++使用STL序列化:原文链接:http://blog.csdn.net/pandaxcl/arti ...

  6. 三维重建:Kinect几何映射-SDK景深数据处理

    此文大量使用XML,非C类的代码,看看图即可. 原文链接:Kinect for Windows SDK开发入门(五):景深数据处理 3. 对物体进行测量 像上篇文章中对深度值测量原理进行讨论的那样,像 ...

  7. 『转』The Beginning of your Design Career

    想想,如果明天我开始学日语,坚持到毕业,其实也可以日语入门了.所以机会都是抓住,当初,也就是去年的时候,我那个时候就开始坚持日语入门,想想现在应该可以开始N2了吧-所以...过去不去理会,现在开始继续 ...

  8. java中4种修饰符访问权限的区别及详解全过程

    java中4种修饰符访问权限的区别及详解全过程 http://jingyan.baidu.com/article/fedf0737700b3335ac8977ca.html java中4中修饰符分别为 ...

  9. 引用css样式的书写格式

    css的书写格式一共有三种 行内样式:意思是在行内中写样式 例如说<p style="color:red">用行内样式编写我的颜色</p> 只适用于< ...

  10. CorelDRAWX8新功能摆脱传统工作模式

    最近,有一则好消息CorelDRAW X8特惠啦!功能不少价格却不高的CDR X8很快成了设计师们的新宠,三折之后你动心了么? 点击这里了解更多.. 那么CDR X8到底有何功能和亮点呢? 完全可自定 ...