今天在做项目的时候遇到这个问题,搞了我大半天才解决。
有时候如果项目中涉及到大量的图片和视频,我们在数据库是存到本地磁盘路径,或者是服务器磁盘路径。
可能就会遇到这个问题,在项目中,能直接访问的资源只能是在此项目中的。当要访问磁盘文件的时候,就会访问不到,也不是说就没有办法。通过下面这种方法就可以。
那就是配置虚拟路径:
也就是说把硬盘上一个目录映射到tomcat的工作目录下,然后tomcat就可以根据一个映射关系找到硬盘中的文件了
1、我们在Eclipse中找到服务器,下面有个server.xml文件,点击打开
2、在<Host>标签内加入如下代码:
<Context crossContext="true" debug="0" docBase="D:\imooc\images" path="/imgUrl" reloadable="true"/>
注意:一定是在<Host>标签内加这句话,否则是没有用的
3、说明
其中docBase就是本地电脑的绝对路径
path就是设置的虚拟路径
修改完之后需要重启tomcat服务器
4、虚拟路径配置完成了,接下来就是jsp页面显示的问题了
<img src="/imgUrl/header1.png" alt="用户头像" width="40" height="40">
这时img标签src中的路径"/imgUrl/header1.png"-------就会被映射为"D:\imooc\images\header1.png"
5、我们可以直接在页面上测试访问
http://localhost:8080/imgUrl/header1.png
如下图所示就能直接访问到
最后,大家如果发现我写的有错误的话,欢迎评论指出哦,共同进步。觉得我写的不错的,可以关注下哦^v^