1. 首页
  2. 编程语言
  3. Java
  4. 解决Springboot整合shiro时静态资源被拦截的问题

解决Springboot整合shiro时静态资源被拦截的问题

上传者: 2021-08-01 13:50:35上传 PDF文件 136.07 KB 热度 35次

最近在弄SpringMVC与Shiro整合,发现如果将DispatcherServlet拦截 *.do这样的URL,就不存在访问不到静态资源的问题。如果DispatcherServlet改为拦截“/”,拦截了所有的请求,同时对*.js,*.jpg的访问也就被拦截了。当访问一个 a.jpg 图片文件时,先通过 DefaultAnnotationHandlerMapping 来找处理器,一定是找不到的,我们没有叫 a.jpg 的 Action。再按 order 值升序找,由于最后一个 SimpleUrlHandlerMapping 是匹配 "/**" 的,所以一定会匹配上,再响应图片。改天做一下压力测试,与Apache比一比。最后再说明一下,如何你的 DispatcherServlet 拦截 *.do 这样的 URL,就不存上述问题了。

用户评论