Liferay Web表格在SSL反向代理站点上的重新收回问题

时间:2015-06-04 16:48:35

标签: ssl tomcat7 liferay-6 recaptcha reverse-proxy

我们安装的 Liferay Tomcat 6.2 EE软件包位于 Apache HTTPD 反向代理服务器后面,SSL终止于负载均衡器。我们在 Tomcat 7 上没有任何 SSL 配置,并且没有使用AJP。

我们遇到了使用 SSL 在默认网站上使用 reCaptcha 的网络表单portlet的问题。在“控制”面板中配置 reCaptcha ,然后将Web表单配置为使用 reCaptcha 后, reCaptcha 图像未在Web表单上呈现。

ReCaptcha 在另一个 HTTP Liferay 6.2 EE 安装和网站上工作,没有任何问题。

Firefox和Chrome中的控制台出现错误: 已阻止加载混合活动内容“http://www.google.com/recaptcha/api/challenge?k=asabsds50”[了解详情]

reCaptcha 调用似乎是使用http而不是https进行的。

谢谢!

1 个答案:

答案 0 :(得分:0)

Liferay需要在server.xml中配置tomcat,以指定redirectport与tomcat正在侦听的端口相同。 8080并将安全标志设置为true。重启Tomcat并进行测试。

在我们的例子中,Apache反向代理指向此端口。这种配置有效。现在reCaptcha呈现并且Web表单成功提交。

$("#itemGrid div[id^=grid-]").each(function() {
    var accept = $(this).attr("id").split("-")[1];
    $(this).droppable({
        drop: dropHandler,
        accept: "." + accept
    });
});

旧的server.xml配置是

<Connector port="listeningport" protocol="HTTP/1.1"
               connectionTimeout="20000" secure="true"
               redirectPort="listeningport" URIEncoding="UTF-8" /> 

希望这有帮助