HTTPS页面里动态的引入HTTP资源,比如引入一个js文件,会被直接block掉的.在HTTPS页面里通过AJAX的方式请求HTTP资源,也会被直接block掉的。

Mixed Content: The page at ‘xxx’ was loaded over HTTPS, but requested an insecure resource ‘xxx’. This request has been blocked; the content must be served over HTTPS.
解决办法:
页面的head中加入:
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
意思是自动将http的不安全请求升级为https
注意:在需要的网页上加上面的语句,
其它不需要的网页不需要加,不然后了出错的。
CSP设置upgrade-insecure-requests
好在 W3C 工作组考虑到了我们升级 HTTPS 的艰难,在 2015 年 4 月份就出了一个 Upgrade Insecure Requests 的草案,他的作用就是让浏览器自动升级请求。
在我们服务器的响应头中加入:
header("Content-Security-Policy: upgrade-insecure-requests");
本文探讨了HTTPS页面中加载HTTP资源导致的混合内容问题,包括动态引入JS文件或通过AJAX请求HTTP资源时的问题,并提供了两种解决方案:一是在页面头部加入特定元标签,二是通过服务器响应头设置CSP来自动升级不安全请求。
2万+

被折叠的 条评论
为什么被折叠?



