Spring 5.0.3 RequestRejectedException: The request was rejected because the URL was not normalized
spring security配置拦截请求报错:不是正规的URL请求被拒绝。
解决办法:
Spring security文档提到请求阻塞的问题。
例如:它可能包含路径遍历序列(像/../)或者多转发斜杠(//),也可能是因为模式匹配失败。一些正规化的容器在执行Servlet映射之前输出这些异常,但是其它的不会。为了保护这里不利的问题,FilterChainProxy使用HttpFirewall 策略去检查和封装请求。非正规的请求默认自动拒绝,路径参数和和双斜杠为了匹配目的被移除。
因此这里有两个可能的解决方法:
1、移除双斜杠(首选的方式)
2、在spring security通过自定义的StrictHttpFirewall允许双斜杠,使用如下代码
步骤1,创建自定义firewall,允许斜杠URL
注意:文章到这里还没有完,由于篇幅限制,完整内容请到hongfu951博客上查看
完整内容URL地址:Spring 5.0.3 RequestRejectedException: The request was rejected because the URL was not normalized