此文章发布于78个月前,部分信息可能已经过时,请自行斟酌确认。
Spring Boot 默认会将 static 目录中的文件映射到根目录 /,而网上一般讲 shiro 配置规则时都会将 /static/** 加到放行名单中,这样就会造成资源文件被 shiro 拦截。
推荐方案
# 设置静态资源目录,如果不设置默认 static 目录中的资源会被映射到根目录 /,那样不方便 shiro 放行
spring.mvc.static-path-pattern = /static/**filterChainDefinitionMap.put("/static/**", "anon"); // 需要配置 spring.mvc.static-path-pattern=/static/**,因默认资源是映射到根目录