将http加载自动改为https
2019-01-08 10:32
357 查看
最近在做一个vue项目,遇到了一些问题,在这里记录下来:
在vue项目中,引入了一个外部的css样式,但是该样式是http的,在调试过程中发现该http链接已经失效,换成https就可以正常加载了。但是我不知道项目中是否还有其他的引入外部资源的链接,所以在index.html中加了一行meta标签:
<meta http-equiv ="Content-Security-Policy" content="upgrade-insecure-requests">
该标签的意思是将站内加载的资源自动将http转为https,这样就可以省事多了
接下来就是该部署项目了,我将打包好的项目放在服务器上,在谷歌,火狐浏览器上访问均是一片空白,但是在ie上却是加载出项目首页了(此时我对于IE的看法竟然有了转变^_^)。然后查找另外两个浏览器为什么显示一片空白,发现所加载的css与js文件全是通过https加载的,这就很纳闷了,在浏览器直接访问该静态资源(http)是可以的,也就是不能以https加载静态资源。想了半天,找了半天,才想起来是上面的meta标签的问题,将其注释掉就可以在谷歌和火狐正常访问了(此时我又开始鄙视IE了Ծ‸Ծ。。。)
好了,找到问题了,接下来就是上网看看“Content-Security-Policy”的作用是什么:
CSP 的实质就是白名单制度,开发者明确告诉客户端,哪些外部资源可以加载和执行,等同于提供白名单。它的实现和执行全部由浏览器完成,开发者只需提供配置。
CSP 大大增强了网页的安全性。攻击者即使发现了漏洞,也没法注入脚本,除非还控制了一台列入了白名单的可信主机。
两种方法可以启用 CSP。一种是通过 HTTP 头信息的
Content-Security-Policy的字段。
相关文章推荐
- https网页加载http资源导致的页面报错及解决方案
- 解决android 5.0 webview不能加载http与https混合内容的问题
- 阿里云服务器Apache环境下搭建HTTPS环境并且设置http自动跳转到https
- IIS 8.0 发布网站。SSL部署后,将http自动强制转换https访问
- Tomcat配置https及访问http自动跳转至https
- 解决android 5.0 webview不能加载http与https混合内容的问题
- 背水一战 Windows 10 (63) - 控件(WebView): 基础知识, 加载 html, http, https, ms-appx-web:///, embedded resource, ms-appdata:///, ms-local-stream://
- wget用法wget是一个从网络上自动下载文件的自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理.
- Http自动跳转Https的接口测试实践
- Tomcat配置HTTPS及访问HTTP自动跳转到HTTPS
- CloseableHttpClient加载证书来访问https网站
- C# Azure-让http自动跳转到https链接
- PHP自动获取协议http还是https
- nginx网站开启https访问,http自动跳转到https
- Apache 实现ProxyPass转发URL到Tomcat并实现http自动转https
- Tomcat配置https及访问http自动跳转至https
- 详解android 用webview加载网页(https和http)
- nginx自动将http转换为https
- 新域名访问方式从http改为https(为了支持微信小程序https用)
- Tomcat配置https及访问http自动跳转至https