Chrome浏览器https网站里http图片资源无法正常加载,出现加载报错问题【测试成功】

艺帆风顺 发布于 2025-04-02 74 次阅读


今天遇到这么一个问题,我们的网站是https的,Chrome浏览器在加载一个http的图片时报错:

仔细查看报错的图片路径,发现图片路径的http协议被Chrome浏览器强制改成了https。

原因分析:

https是严格加密传输,不允许调用http普通协议数据,其中包括:JS、CSS、图片等任何http协议普通资源的存在。在https地址中,如果加载了http资源,浏览器将认为这是不安全的资源,将会默认阻止。

在 https 网站加载 http 协议的图片时,Chrome浏览器会强制把图片路径的 http 改成 https,然后进行资源请求,所以图片就加载报错了。

谷歌官方也发了通告:

https://security.googleblog.com/2019/10/no-more-mixed-messages-about-https_3.html

https网页中加载的http资源被称之为 Mixed Content(混合内容),不同浏览器对 Mixed Content 有不一样的处理规则。经测试,只有Chrome浏览器才会把http图片强制转换成https,搜狗、360极速浏览器不会强制转换,可以正常的加载图片

解决办法

办法1:更改Chrome对网站不安全内容处理行为为允许

 把“不安全内容”设置为“允许”,然后刷新页面就可以了。这个设置只针对具体某个网站有效。

方法2:把http图片存储到支持https的服务器

    版权声明:本文内容始发于CSDN>作者:huangpb0624,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行可。始发链接:https://blog.csdn.net/huangpb123/article/details/130535276在此特别鸣谢原作者的创作。此篇文章的所有版权归原作者所有,商业转载建议请联系原作者,非商业转载请注明出处。