0

我们有一个统一的门户,它通过基于 jQuery 选项卡的界面链接多个服务,利用 iframe 显示来自不同服务的内容。我们的门户在使用 HTTPS/SSL 的安全服务器上运行。虽然我们的大多数外部服务都是 HTTPS,但其中两个不是。显然,我们意识到混合内容的问题,我们不喜欢在门户中拥有非 https 站点的想法,但我们别无选择。一切都还好,直到几天前谷歌将 chrome 更新到 30 版时,它现在默默地阻止了混合内容。这给我们带来了很多问题。我们联系了外部服务并询问他们是否可以将其服务升级到 HTTPS,其中一个回复说他们在未来 2 年内没有这样做的计划。

显然这是一个问题。我们尝试通过让该服务在新的浏览器窗口中打开来解决这个问题,但这是一个相当不雅的解决方法,如果可能的话,我想摆脱它。有什么方法可以让我使用 AJAX 或 PHP 来预取相关页面,然后在门户 iframe 中显示它而 Chrome 不会阻止它?

我将非常感谢任何建议。我确实理解将安全内容与非安全内容混合在一起是多么糟糕的想法,但我在这件事上别无选择,因为我的经理坚持认为该服务必须成为门户的一部分。

提前致谢。

问候

亚历克斯

4

1 回答 1

1

一个稍微简单的解决方案是使用反向代理。您可以很容易地配置 Apache 以获取 HTTPS 连接,从另一个 URL 获取请求的内容并返回它。请参阅mod_proxy。问题是浏览器必然会看到不同的 URL/域(您的反向代理),这可能会也可能不会导致 cookie 或硬编码链接出现问题。

于 2013-10-17T13:53:15.923 回答