ProxyPass を使用してポート 80 のトラフィックを Tomcat 経由でホストされている Web アプリケーションにリダイレクトするときに、Cookie を機能させる際に問題が発生します。
Cookie を有効にする動機は、URL に追加された「jsessionid=」パラメーターを取り除くことです。
Web アプリケーションの META-INF/ の context.xml で Cookie を有効にしました。http://url:8080/webapp
経由で Web アプリケーションにアクセスすると、期待どおりに動作します。jsessionid パラメータは URL に表示されず、代わりに Cookie に保存されます。
apache2 仮想ホストを介して自分の Web サイトにアクセスすると、「jsessionid」が URL に追加されるため、Cookie が機能しないようです。この問題を解決するにはどうすればよいですか?
これが私のVHost構成です:
<仮想ホスト *:80> サーバー名 somedomain.no ServerAlias www.somedomain.no <プロキシ *> 注文拒否、許可 すべてから許可 </プロキシ> ProxyPreserveHost オフ ProxyPass / http://localhost:8080/webapp/ ProxyPassReverse / http://localhost:8080/webapp/ エラーログ /var/log/apache2/somedomain.no.error.log CustomLog /var/log/apache2/somedomain.no.access.log 結合 </仮想ホスト>
編集: Cookie は実際に設定されています。問題は、Cookie に "Path: /webapp" が含まれていることだと推測しています。