2013-12-17 46 views
0

我開發了一個使用tomcat作爲後端和apache作爲前端重定向mod_proxy的jsp網站。每個請求後的新會話,tomcat後端,apache前端

首先我的配置。

阿帕奇:

ProxyRequests Off 
<Proxy *> 
Order deny,allow 
Allow from all 
</Proxy> 
SSLProxyEngine on 
ProxyPass/https://realdomain.tld:8443/proj1/ 
ProxyPassReverse/https://realdomain.tld:8443/proj1/ 
<Location /> 
Order allow,deny 
Allow from all 
</Location> 

當我重裝我的JSP網頁,每次我得到一個新的會話ID。當在沒有Apache和mod_proxy的localhost上開發時,一切正常,我保持相同的會話ID。

對於我的web應用程序,在此期間保持同一會話很重要。

任何想法如何我可以告訴Apache保持我的會議。我猜apache必須將cookie重定向到tomcat吧?但如何...

回答

1

任何時候你改變代理(/ - > proj1)中的上下文路徑,你創建了一堆需要解決的問題。您的直接cookie問題可以通過ProxyPassReverseCookiePath指令解決。然後我懷疑你會發現下一個要解決的問題。您最好將您的應用程序重新部署爲ROOT Web應用程序,以便您的ProxyPass指令是ProxyPass/https://realdomain.tld:8443/

順便說一句,它看起來像是代理到Tomcat的https連接器。如果你不小心,你會爲自己創建安全問題,如果httpd通過http接收請求,通過https代理它們到Tomcat,並且Tomcat將這些請求視爲通過安全通道接收到。

+0

ProxyPassReverseCookiePath爲我解決了它。我看不到任何其他問題的演變。謝謝! – tuxmania