【问题标题】:Resolving Mixed Content warning from external insecure server解决来自外部不安全服务器的混合内容警告
【发布时间】:2016-07-13 08:43:02
【问题描述】:

我有一个 https 站点,需要显示来自其他站点的内容,这些站点本身可能是也可能不是 https。可以预见的是,我在控制台中收到了这样的警告消息......

“混合内容:'https://www.example.com/'(我的服务器)的页面通过 HTTPS 加载,但请求了不安全的图像 'http://www.aninsecuredomain.com/image.jpg'。(不是我的服务器)此内容也应通过 HTTPS 提供。”

(更不用说在大多数现在认为我网站的网络不安全的浏览器中我不再看到小挂锁正确显示的事实)。

我已经阅读了有关此主题的大量关于 SO 的帖子,但我似乎无法找到一个明确的答案,即当我不拥有外部服务器时是否可以做任何事情(所以不能保证他们会有一个 https 版本)。感谢任何关于这是否可能的想法,如果可以,我该如何实现它!

【问题讨论】:

    标签: https mixed-content


    【解决方案1】:

    当您需要在 https 网页中包含来自其他域的内容时,您可以:

    • 通过向他解释其背后的安全原因,让其他域的所有者承诺使用 https

    • 通过您的网站代理内容或自行托管(如果您有权这样做)

    (如果您不再看到挂锁,那是因为您的页面不再安全,因为它包含可能已被缓和的不安全元素:不是他们“认为我的网站的网络不安全”,它确实不安全!)

    【讨论】:

    • 谢谢汤姆,所以如果我的网站上只有“example.com/?img='http://www.aninsecuredomain.com/image.jpg”之类的链接,那么对于代理选项 - 这不是真的欺骗浏览器认为我页面上的内容是安全的吗?
    • @d3wannabe 代理不如托管自己安全,但它不仅仅是 http :不安全的链接不再是访问者和您之间,而是您和其他网站之间
    【解决方案2】:

    您应该使用// 前缀。 (instead of http[s]://)

    • 在 https 页面上,将加载安全版本。
    • 在纯 http 页面上,将加载纯 http 版本。

    编辑您的主题,将每次出现的http://fonts.googleapis.com/... 替换为//fonts.googleapis.com/...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-03
      • 2016-06-22
      • 1970-01-01
      • 1970-01-01
      • 2013-07-11
      • 2017-02-04
      • 2015-12-15
      • 1970-01-01
      相关资源
      最近更新 更多