Tomcat配置虚拟路径访问容器外的硬盘资源

Posted Hellxz博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat配置虚拟路径访问容器外的硬盘资源相关的知识,希望对你有一定的参考价值。

问题:

如果tomcat中上传了很多的图片,会导致tomcat启动的时候会慢,所以应该把图片上传到tomcat容器外部

那么,问题来了:

tomcat出于安全考虑,禁止了直接访问外部硬盘资源。

解决:

修改tomcat配置文件,配置虚拟路径,使tomcat的项目可以访问硬盘资源。

简单教程:

准备:

tomcat7.0

开始:

1.

在Tomcat7的安装目录下找到conf目录,在该目录下有一个server.xml文件,这个文件的任务是配置整个服务器信息。 打开这个文件,找到HOST标签,

在Host标签内添加一行

<Context path="/uploadFile" reloadable="true" debug="0" docBase="E:/uploadPic" crossContext="true"/>

其中path是你要发布的url,例如localhost:8080/uploadFile/路径名/文件名 

reloadable是是否重新加载,因为是上传的资源,开着

debug与 Engine 关联的 Logger 记录的调试信息的详细程度。数字越大,输出越详细。如果没有指定,缺省为 0。

docBase是你要访问的真实资源位置,可以相对路径,可以绝对路径,在这个路径相当于path中配置的路径,他的子文件夹也是如此。

crossContext如果想在应用内调用 ServletContext.getContext()来返回在该虚拟主机上运行的其他 web ,如果没配置,默认为false,意思是调用ServletContext.getContext()返回null

2.

除此之外还需要配置一下web.xml,因为现在的tomcat这样配置,所有的互联网项目都能访问

找到web.xml中的listings,下边的值改为true.

 

以上是关于Tomcat配置虚拟路径访问容器外的硬盘资源的主要内容,如果未能解决你的问题,请参考以下文章

tomcat中虚拟主机 web应用 虚拟路径映射相关问题

Tomcat下一个应用,怎么配置多个访问路径

tomcat配置虚拟路径

springboot内置Tomcat设置虚拟图片路径

tomcat的虚拟路径问题

Not allowed to load local resource: 报错解决方法