故障现象:Tomcat8.5,单机多实例,有个实例有静态资源需要使用软连接访问,每次重启项目静态资源就会访问404错误。
按照网上方法设置如下:
在tomcat里context.xml文件里设置allowLinking="true"就可以打开软连接,根据tomcat版本不同有不同的设置:
tomcat567版本:
<Context allowLinking="true" />
tomcat89版本:
<Context>
<Resources allowLinking="true" />
</Context>
设置以后,重启项目,ROOT目录软连链接依然访问报404错误,项目所有静态资源访问也报404错误。
经过新建实例多方面对比配置文件测试,发现是实例conf/server.xml里面
<Context path="" docBase="fileserver-api-1.0-SNAPSHOT/" debug="0" reloadable="true" crossContext="true"/>导致。
注释此段配置文件以后,重启项目软连接和静态资源都访问正常。