You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Security 6.2配置静态资源忽略后拦截器仍记录请求的原因排查

问题原因与解决方案

首先要明确:Spring Security的WebSecurityCustomizer.ignoring()只是让请求绕过Security的过滤器链,不会影响Spring MVC拦截器的执行。拦截器属于Spring MVC层面,只要请求进入DispatcherServlet,就会触发拦截器逻辑,除非你在拦截器配置里主动排除这些静态资源路径。

你升级前拦截器不记录静态资源,大概率是之前的拦截器配置里已经加了排除规则,升级过程中可能配置丢失、或者Spring MVC的默认行为有变化,导致拦截器不再排除这些路径。

验证与修复步骤

  • 检查你的拦截器注册代码,确保添加了静态资源路径的排除:
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(yourUrlLoggingInterceptor)
                .addPathPatterns("/**")
                .excludePathPatterns(
                    "/h2-console/**",
                    "/static/**",
                    "/img/**",
                    "/css/**",
                    "/js/**",
                    "/images/**",
                    "/favicon.ico",
                    "/error",
                    "/**/**.jsp",
                    "/misc/**"
                );
    }
    
  • 确认Spring Security的WebSecurityCustomizer配置是正确的,6.2版本中web.ignoring().requestMatchers(...)的写法没问题,它确实会让这些请求不经过Security过滤器,但不影响MVC拦截器。

简单说:Security的忽略和MVC拦截器的排除是两个独立的配置,你现在的问题是拦截器没排除静态资源,和Spring Security的配置无关。

内容的提问来源于stack exchange,提问作者leesehun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 09:12:07