【问题标题】:Mixed content: Chrome blocking <img> at my site but not混合内容:Chrome 在我的网站上阻止了 <img> 但没有
【发布时间】:2017-02-20 12:05:46
【问题描述】:

我有一个 HTTPS 站点,它从 HTTP RSS 提要加载内容。尝试加载图像时,Chrome/Firefox 会通过以下消息阻止它们:

混合内容:“mysite.com/index.php”页面是通过 HTTPS 加载的,但请求了不安全的图像“http://www.example.com/2017021411050.jpg”。此请求已被阻止; **内容必须通过 HTTPS 提供**。

但是,如果我在 Feeldy 中加载相同的提要,我可以看到所有图像,尽管 Feedly 的站点也是通过 HTTPS 加载的。在 Feedly 的情况下,浏览器只显示一个警告:

'https://feedly.com/i/subscription/feed/http://www.example.com/rss.php' 的页面是通过 HTTPS 加载的,但请求了不安全的图像'http://www.example .com/2017021411050.jpg'。 **此内容也应通过 HTTPS 提供**。

为什么 Feedly 可以绕过混合内容阻止,而我收到阻止时只收到警告?

【问题讨论】:

    标签: html mixed-content


    【解决方案1】:

    Firefox 和 chrome 都是安全浏览器,但我不确定 Feedly 到底是什么。 Firefox 和 chrome 会阻止它们,因为它们认为在 HTTP 网站中加载 HTTP 图像不安全,但 Feedly 并不在意,因此他认为只发出警告就足够了。 但我知道解决这个问题的方法 例如你有这个 URL

    http://otherdomain.com/image.jpg
    

    这是一个 HTTP ,然后你改变它像

    https://example.com/imageserver?url= //here put your image url
    

    这个技巧会让浏览器认为您正在通过如下所示的 HTTPS URL 加载图像

    https://example.com/imageserver?url=http://otherdomain.com/image.jpg&hash=abcdeafad
    

    【讨论】:

    • 我知道 MC 和浏览器是如何工作的,但关键是为什么 Feedly(一个在线 RSS 阅读器,所以,像我这样的网络应用程序)能够在一段时间内获得 HTTP 图像同样的图像我得到一个块。他们使用什么技术来绕过阻塞?
    • 这实际上是我的答案 lmao 的复制粘贴
    • 哦 melvin Koopmans 我是这个 stackoverflow 的新手,我想我们同时发布了相同的答案,因为在我回答这个问题时没有其他答案,所以我为重复的答案
    【解决方案2】:

    在解析 RSS 提要时,您也在检索图片网址。

    假设图片网址是http://externalsite.com/someimage.jpg

    您将此 URL 重写为 https://example.com/image?url=http://externalsite.com/someimage.jpg&hash=1234567

    现在浏览器总是通过 https 发出请求,而你摆脱了这些问题。

    【讨论】:

    • 感谢您的回答,但不是问这个问题。问题是关于 Feedly 绕过 MC 块的技术。 Feedly 似乎不像图像的代理。
    • @AitorF 所以图片的src是http://,用HTTPS加载时不会出现混合内容错误??
    • 对!在 Feedly 中,但在我的情况下,我遇到了一个很大的红色错误。
    猜你喜欢
    • 2018-05-18
    • 1970-01-01
    • 2017-06-27
    • 2016-11-05
    • 1970-01-01
    • 2018-06-01
    • 2016-07-20
    • 2015-10-11
    • 2018-10-12
    相关资源
    最近更新 更多