为了部署方便,把webapps下的大文件(图片等资源)放到工程外,通过软连接的方式设置
命令最常用的参数是-s,具体用法是:ln -s 源文件 目标文件。
ln -s /usr/local/pic/images/ /usr/local/tomcat/webapps/ROOT/images
能ROOT下的images 新创建的文件夹指向给 图片真正的存放路径
本来以为这样就可以了,没想到在测试的时候出现了问题: images目录下的静态图片,无法正常在浏览器地址栏里访问到。
勿 用质疑,问题肯定出在Tomcat上,猜想Tomcat可能出于安全的考虑对文件、文件夹的连接进行了限制。google了一下,发现Tomcat的一个 配置项:allowLinking,默认的配置应该是allowLinking=false,配置成true就可以解决这个问题了。
配置项配置在项目的Context元素上:
<Context path="/" docBase="/myApp" reloadable="true" privilege="true" allowLinking="true"></Context>
reloadable="false"
的作用为:
reloadable:如果这个属性设为true,tomcat服务器在运行状态下会监视在WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到有class文件被更新的,服务器会自动重新加载Web应用。
在开发阶段将reloadable属性设为true,有助于调试servlet和其它的class文件,但这样用加重服务器运行负荷,建议在Web应用的发存阶段将reloadable设为false。
原文链接:https://blog.csdn.net/lijian_nhy/article/details/84373053