2
私たちは "ボックス" Web製品を開発しているので、アプリケーションが配備される環境は予測できません。このアプリケーションはスプリングセキュリティを使用しています。しかし、Tomcatがルートにアプリケーションを置いていない場合は、次の構成が失敗したことが明らかにされています春のセキュリティ(3.0.x)で可変コンテキストパスを指定
勧告に従い<sec:http auto-config="true" >
....
<sec:form-login login-page="/ui/Login" />
:https://stackoverflow.com/a/6934712/149818は動作しません
#{servletContext.contextPath}
- あるhttp://foo/ui/Login
にリダイレクトされるか、生きている{servletContext.contextPath}#を取得する方法を
- または認識し、実際のcontextPathをバネのセキュリティを強制的にどのよう
私はコンテキストパスが自動的に 'login-page'に追加されていると確信しています。どのバージョンのSpring Securityを使用していますか? – axtavt
@axtavt 3.0.7 – Dewfy
それは正しいとは言えません。リダイレクトを処理する 'LoginUrlAuthenticationEntryPoint'クラスは常にURLの一部としてコンテキストパスを含みます(サンプルアプリケーションには例えばコンテキストパスがあります)。リダイレクトが行われる場所でデバッグログの該当するセクションを投稿できますか? [FAQ](http://static.springsource.org/spring-security/site/faq/faq.html#faq-anon-access-denied)に記述されているように、通常、ExceptionTranslationFilterからメッセージを参照する必要があります。その直後に「リダイレクト先」に続いてURLが続きます。 –