IE 7 和 IE 8 中的 HTTPS 和 HTTP 混合内容
我有一个应用程序,我希望主要基于 ssl,但允许 http 链接在 IE7 和 IE8 中的 https 页面上共存。当我放置混合内容(在 https 服务的页面上嵌入 http 链接)时,我收到来自 IE 的混合内容警告。有什么办法解决这个问题吗?我们正在使用安全证书,某些证书是否处理混合内容? Firefox 和 Chrome 不会抛出任何错误...有什么想法吗?
I have an application that I would like to be mostly ssl based but allow http links to coexist on https pages in IE7 and IE8. When I put mixed content (embed http links on https served pages) I get mixed content warnings from IE. Is there any way around this? We are using a security certificate, do certain certs handle mixed content? Firefox and Chrome don't throw any errors...any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不,没有办法解决这个问题 - 这是浏览器限制,由用户决定是否允许混合内容。如果您通过 SSL 提供服务,那么整个页面都应该以这种方式提供服务,这意味着您还应该安全地提供样式表、脚本和图像(即使它们来自 CDN)。
有关如何使用与协议无关的链接(即无论协议是 http 还是 https 都有效)的好答案,请检查 这个之前的答案。我最近意识到的另一个好资源是这篇博客文章: 协议相对网址
No, there is no way round this - it is a browser restriction, and it is up to the user to allow the mixed content or not. If you are serving over SSL then the whole page should be served that way, which means you should also serve your stylesheets, scripts and images securely (even if they are sourced from a CDN).
For a good answer on how to use links that are protocol agnostic (i.e. they work whether the protocol is http or https), check this previous SO answer. Another good resource I've recently become aware of is this blog post: The protocol-relative URL