解决来自外部不安全服务器的混合内容警告

Resolving Mixed Content warning from external insecure server

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

"Mixed Content: The page at 'https://www.example.com/' (my server) was loaded over HTTPS, but requested an insecure image 'http://www.aninsecuredomain.com/image.jpg'. (not my server) This content should also be served over HTTPS."

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

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

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

  • 通过向他解释其背后的安全原因,让其他域的所有者提交 https

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

(如果您不再看到挂锁,那是因为您的页面不再安全,因为它包含可能已被篡改的不安全元素:不是它们 "consider my site's network insecure",它确实不安全!)

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

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

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