首页>安全资讯>在HTTPS里调用HTTP资源不出现提示框的方法

在HTTPS里调用HTTP资源不出现提示框的方法

如何在HTTPS里调用HTTP资源不出现提示框?浏览器默认是不允许在HTTPS里面引用HTTP资源的,一般都会弹出提示框,用户确认后才会继续加载,用户体验非常差。而且如果在一个HTTPS页面里动态的引入HTTP资源,比如引入一个js文件,会被直接block掉的。Chrome 21之后,在SSL加密页面embed非SSL的Flash会怎样呢?会被默默的屏蔽掉,只留下一句console报告。

解决方法

可以使用iframe的方式引入HTTP资源,比如在HTTPS里面播放优酷的视频,我们可以先在一个HTTP的页面里播放优酷视频,然后将这个页面嵌入到HTTPS页面里就可以了,另外一个典型的例子是在HTTPS页面里通过AJAX的方式请求HTTP资源,Chrome是不允许直接AJAX请求HTTP的。如果两个页面的内容都可以控制的话,当前窗口可以iframe窗口进行通信的。

如何避免在HTTPS里面引用HTTP?

对于同时支持HTTPS和HTTP的资源,引用的时候要把引用资源的URL里的协议头去掉,例如://www.example.com/scirpt.js,这样相当于相对路径,即浏览器会自动根据当前是HTTPS还是HTTP来给资源URL补上协议头的,可以达到无缝切换。参考:使用相对Url无缝切换HTTP-HTTPS

总结

如果是站内资源,最好是HTTP和HTTPS各一份,然后再通过相对路径的方式引用,这样就可以完美的解决掉这个问题了,比如Google首页就是2种方式都提供了。对于站外的资源如果不支持HTTPS那就只能用iframe了

以上,是为大家分享的“在HTTPS里调用HTTP资源不出现提示框的方法”的全部内容,如果用户遇到的问题不能解决,可通过wosign官网客服寻求帮助,凡是选择wosign ssl证书的网站用户,wosign可提供免费一对一的ssl证书技术部署支持,免除后顾之忧.

最新资讯

揭秘web最常见的攻击和防御手段

什么是流量劫持?流量劫持的攻击手段与防御方法

证书加密解密,如何使用无密码保护的私钥?

ECC加密算法与RSA算法哪个好?

教你如何用HSTS实现http跳转https?

标签推荐:ssl证书过期 | 阿里云ssl证书 | https证书申请| 数字签名技术| 火狐浏览器证书| ssl证书更新| 小程序证书| 驱动数字签名| 微软代码签名