我在Tomcat实例中部署了一个标准的webapp。此webapp中有一些页面可以通过http从一个域访问,另一些页面可以通过https从另一个域访问。我正在使用这样的代理通行证:
<VirtualHost *:80>
ServerName a.somewhere.com
ProxyPass /app http://127.0.0.1:8080/app
ProxyPassReverse /app http://127.0.0.1:8080/app
</VirtualHost>
<VirtualHost *:443>
ServerName a-secure.somewhere.com
ProxyPass /app http://127.0.0.1:8080/app
ProxyPassReverse /app http://127.0.0.1:8080/app
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLCertificateFile "..."
SSLCertificateKeyFile "..."
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
</VirtualHost>
方案如下:webapp中的每个页面都可以通过以下方式访问:
http://a.somewhere.com/app/....
虽然有一些页面可以访问:
https://a-secure.somewhere.com/app/....
例如,当用户在
时http://a.somewhere.com/app/unsecure.jsp
有一个链接到
https://a-secure.somewhere.com/app/secure.jsp
在这样的网站上浏览时,我该怎么做才能维护用户的会话信息?
提前谢谢。