我的struts2和https上的redirect-action有问题。
基本上,我从https请求中返回的重定向响应具有不安全的位置(即http:// ...)。
这意味着浏览器从安全会话转到非安全会话。
知道可能导致这种情况的原因吗?
干杯,
斯图尔特。
答案 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"