Tomcat绝对路径资源访问问题

该文章是飞升飞博主原创内容

原博客地址:

链接: 点击跳转原博客地址

最近,在进行web项目开发时,我遇到了一个关于项目前端图片资源访问路径的问题。如果此时将图片资源直接放置在项目内,再使用相对路径访问,问题当然是能够解决,但是随着项目的进行,这样做会导致项目空间不断增大,而且项目的可移植性也会变差,还有安全性的问题。所以,这种方法我们不考虑。

针对自己的个人项目,我在数据库中存放的是图片资源的相对路径,而图片资源是存放在本地磁盘上的,我们知道如果前端想访问图片资源,这个时候必须采用绝对路径才可以访问。此时,我想到的解决方法是,可以在后台通过拼接得到图片资源的绝对路径,这样在前端自然可以是访问的,但是当项目后续不断迭代,图片资源不断增加,这种方法会影响到项目整体运行的性能,也会影响到用户访问的体验。所以,这种方法我们也不考虑。

经过查阅相关资料,我们可以利用服务器Tomcat的docBase和path属性,完成对图片资源相对路径的转换。具体做法是,首先找到Tomcat安装的根目录,然后修改conf子目录下的server.xml文件,找到Host节点,并在节点内增加以下配置:

<Context docBase="E:\Program\images\upload" path="/upload"/>
   
   

docBase属性:表示图片资源存放的本地磁盘位置;

path属性:表示需要转换的图片资源相对路径的前缀;

例如,我在数据库中存放的图片资源相对路径地址是:\upload\item\headline\1.jpg

经过服务器的转换后,就变为了:E:\Program\images\upload\item\headline\1.jpg

经过测试,通过浏览器是可以成功访问到图片的,效果如下图所示:

注意:这里,如果是使用IntelliJ IDEA 工具的小伙伴们,在Tomcat服务器设置栏中需要勾选“Deploy applications configured in Tomcat instance”,如果是使用Eclipse工具,那就不需要作修改,直接就可以访问了。

另外,对于使用IntelliJ IDEA 工具,还有第二种方法,设置Tomcat服务器的虚拟路径,即在Deployment中引入图片资源存放的本地路径,再设置图片资源相对路径的前缀,具体做法如下图所示:

经过上述设置,我们在前端就可以通过相对路径,完成对本地图片资源的访问啦!


到达文末了,十分感谢小伙伴们的阅读哈,如果您对我的文章有什么意见或者建议,也欢迎您来进行评论,私信我也可以哈!代码如诗,小伙伴们和我一起努力加油,做持续学习者!:)

 

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值