Tomcat 虚拟目录映射两种方法和用途
(1)将 web 应用映射到 tomcat 中:如一个 test 的 web 应用,可以通过虚拟目录映射将其映射到 tomcat(webapps)中。
(2)将外部资源映射到 tomcat 中以便使用:如一些外部图片、文档等,将其映射到 tomcat 中以便使用,如下载等。
一、两种方法
方法一:
在../conf/server.xml 中
在 之间加入如下代码:
privileged=“true”reloadable="false" debug="0" workDir="" />
方法二: (最佳配置)
在../conf/Catalina/localhost 中任意名称创建 xml 文件并添加以下内容
" docBase="D:/Work/resourcespart1"privileged=“true” reloadable="false" debug="0" workDir="" />
二、参数详解:
path 为虚拟路径,访问时的路径
docBase 是实际路径,一般为绝对磁盘路径,可以写相对路径,也可以给定相对于 的 appBase 属性的相对路径相对路径,默认的是 webapps,通常设置虚拟目录的目的是将 tomcat 的安装和项目的保存分开,所以这里建议使用磁盘绝对路径,并且这个磁盘路径不是在 tomcat 目录下。
workDir 是 tomcat 运行是对 JSP 文件做编译后的文件,这个文件最好也是分开。
debug debug level, 0 表示提供最少的信息,9 表示提供最多的信息,建议设置为 0
privileged 设置为 true 的时候,才允许 Tomcat 的 Web 应用使用容器内的 Servlet
reloadable 如果为 true,则 tomcat 会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes 目录的变化,自动装载新的应用程序,可以在不重起 tomcat 的情况下改变应用程序,实现热部署
三、注意事项:
1.利用自定义 xml 文件做映射时../conf/Catalina/localhost/ 文件夹下创建一个 xml 文件,任意文件名都可以,比如创建一个 test.xml,在文件中添加 该文件名 test 就是虚拟目录,path 的值 test1 不起作用;
2.在 server.xml 中配置 path 的值 test1 就是虚拟目录,这是两者之间的区别之一,另外采用自定义 xml 映射灵活,不用重启服务,可以随时改变文件名从而控制虚拟目录。
3.如果另外利用映射部署 web 应用时,将 docBase 设置为 web 应用的路径,可以将 reloadable 设置为 true,这样可以实现动态部署,当然最简单部署就是讲 web 应用之间拷贝到 Tomcat 的 webapps 路径下。
4.如果在测试中出现 404 的错误,如果前面配置没有错,可能就是在../conf/web.xml 文件中把虚拟路径显示目录给禁止了,此时可以在 web.xml 文件中找到:
"#
listings
true
#"
将 listings 的 value 改为 true,然后重新启动 tomcat。
上面的修改是全局修改。若在某一个应用中开启 listing 时,在 WEB-INF/web.xml 中:
转载自:http://w3capp.cn/download/details?id=68&focus=5&type=2
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于