在https上使用struts2重定向操作

时间:2011-11-30 12:34:56

标签: https struts2

我的struts2和https上的redirect-action有问题。

基本上,我从https请求中返回的重定向响应具有不安全的位置(即http:// ...)。

这意味着浏览器从安全会话转到非安全会话。

知道可能导致这种情况的原因吗?

干杯,

斯图尔特。

2 个答案:

答案 0 :(得分:3)

Struts 2本身默认不支持SSL切换 如果您从HTTPS模式切换到HTTP,反之亦然,我最好的选择是使用Struts2-ssl插件。 该插件将根据方法注释或您提供的配置来处理切换。

这里有详细信息 Struts2-SSL plugin

答案 1 :(得分:2)

问题不在Struts 2中,尽管Umesh发布的解决方案也有效。

我正在使用的环境在到达Apache前端之前,SSL连接已由负载均衡器终止。这意味着对Tomcat的AJP请求似乎是HTTP,并且Struts重定向操作的响应中的重定向URL被写为HTTP。

我选择的解决方案是在tomcat的server.xml中为HTTPS连接编写一个单独的连接器,指定:

secure="true"
scheme="https"
proxyPort="443"