我有一个简单的 Spring Security (3.x) 配置,要求对我的应用程序中的资源子集进行 HTTP BASIC 身份验证。
<http auto-config="true" use-expressions="true">
<intercept-url pattern="/secured/**" access="hasRole('ROLE_ADMIN')" requires-channel="https" />
<http-basic />
</http>
应用程序部署在 context root ctx
。我正在将模式映射/secured/*
到 Spring Security 过滤器链上。
对资源的请求https://server:httpsport/ctx/secured/blah
工作正常。请求也是如此https://server:httpsport/ctx/secured
。但是,当我切换到不安全时,例如。http://host:port/ctx/secured
似乎重定向返回错误,复制了上下文根。在我的日志中,我可以看到发出了一个请求/ctx/ctx/secured/...
。
有人可以建议问题是什么或我应该去哪里看吗?