私はどこでも探していましたが、次の状況の明確な解決策を見つけることができません:
apacheの背後にあるtomcatで実行されているWebアプリケーション(Grails + Spring Security)があります。アプリケーションの一部はhttpsで実行する必要があるため、Spring Security Channel Securityを使用すると、アプリケーションの安全な部分に移動するたびに、Springは302ステータスコードでhttpsにリダイレクトします。
これで、Tomcatはhttpsと証明書について知るように設定されたため、SSLの処理方法を知っています。実際、URLとポートに直接移動してTomcatを直接ヒットすることで、apacheを回避すると、すべてが100%機能します。
問題は、Tomcatの前にapacheを配置するときに発生します。現在使用しているapache構成は、アプリケーションの安全でない部分に対しては正常に機能します。mod_jkを使用してapacheとtomcatをプロキシしています。
ただし、アプリケーションの安全な部分に移動しようとするとすぐに、Springがリダイレクトし、
<VirtualHost _default_:443> ... </VirtualHost>
apache設定の一部...そしてこれが問題の始まりです。
私が読んだことから、apacheはmod_jkを介して、ssl処理をtomcatに渡すことができます。しかし、これを正しく構成することはできないようです。tomcatはすでにsslに設定されており、証明書がどこにあるかを認識しており、Spring Securityが設定されているため、tomcatですべてのsslを処理し、apacheで単にtomcatにポーンオフします。
これは可能ですか、それとも何かが足りませんか?これを設定する方法について誰かが明確な指示を持っていますか?どんな助けでも大歓迎です。
Apache2.2とtomat7.0.27を使用しています
ありがとう