记一次 HTTPS升级

原创
2017/01/10 10:36
阅读数 157

最近遇到一份旧站升级HTTPS的工作,原因自然是提高网站安全性咯,配合移动部门完成苹果的ATS要求,再这个过程中遇到一个问题。

  • http页面加载https资源的问题

        想来这个应该是不会有问题的,于是乎调试,费了劲地调试,找前端同事废了劲地调试,抓到如下日志:

Refused to load the script 'https://localhost/cnews/js/ntes_jslib_1.x.js' because it violates the following Content Security Policy directive: "default-src 'self' 'unsafe-eval' 'unsafe-inline'  api.map.baidu.com *.nosdn.127.net echarts.baidu.com *.map.bdimg.com". Note that 'script-src' was not explicitly set, so 'default-src' is used as a fallback.

    想来不应该啊,求助,搜索,再求助,终于还是自己找到了所以然,原来前端同事为了提高网页的安全性(为了防止XSS)加了CSP(Content-Security-Policy)头,即:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' 'unsafe-eval' 'unsafe-inline' api.map.baidu.com *.nosdn.127.net echarts.baidu.com *.map.bdimg.com" />

    遂搜索其语法,在 https://imququ.com/post/content-security-policy-reference.html 找到所以然,在信任列表中加入https: 即可。

    各浏览器对CSP的支持如下:http://caniuse.com/#feat=contentsecuritypolicy

    另其它同事给予建议,所有静态资源去掉协议也可以,即

<link rel="stylesheet" type="text/css" href="//img2.cache.netease.com/f2e/house/estate_touch/css/common.1016964.css"/>
  • https页面加载http资源的问题

        这个我想在升级HTTPS的时候都会遇到,将静态资源文件都升级为HTTPS就好了。

  •  ATS检测网站

      https://www.qcloud.com/product/ssl#userDefined10

展开阅读全文
CSP
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部