SpringBoot整合Shiro静态资源拦截配置

springboot整合thymeleaf会默认访问resources文件下的static目录

方法一:将

map.put("/static/**","anon");

改为

 map.put("/css/**","anon");
 map.put("/img/**","anon");
 map.put("/js/**","anon");

即可引入静态资源

<link rel="stylesheet" type="text/css" href="css/login.css">

方法二:在yml文件中修改

spring:
   mvc:
     # 配置静态资源映射路径,/public/resources路径失效
    static-path-pattern: /static/**
 

方法三:

springboot默认会将static目录中的内容做为classes根目录的内容发布到web服务器, 所以如果想要放行静态资源, 同时又要实现拦截/**请求, 可以按照如下方式解决:

第一步:在static下面创建目录statics,然后将静态资源拷贝到这个目录中:
SpringBoot整合Shiro静态资源拦截配置_第1张图片
第二步:拦截配置:

filterChainDefinitionMap.put("/statics/**", "anon");
filterChainDefinitionMap.put("/**", "authc");

重启web服务器, 清除浏览器缓存, 此时source中已经是正确的路径了, 静态资源被引用了.问题解决。

你可能感兴趣的:(#,SpringBoot,#,Shiro,静态资源拦截配置)