网站的https改造实战记录 – 龙剑

网站的https改造实战记录

干货 admin 来源:leonardc 456浏览

主要介绍一下,https改造的相关考虑和改造实施流程。

主要以下几点考虑:

1:最主要的就是更安全,能有效防止劫持。

遇到过因劫持导致angularjs页面空白的问题:

angurlarjs1.5.5 ui-view加载模板被替换导致空白(cookie/flashcookie.swf )

有朋友看网站的时候,说提示劫持,我擦这哪行,必须改https

2:搜索排名更好

3:趋势

4:http站点看不到https站点过来的referer

( 用户从一个HTTPS的网站点击链接到另一个HTTP的网站时,不发送referer )

5:网站结构目前比较简单,迟早都要改,越晚改成本越高

因站点结构比较简单,改起来比想象的简单许多。

下面说说整个改造流程:

(测试环境下进行)

1:关于证书:

之前我们也看过一些证书相关的文章,比较倾向 Let’s Encrypt 的免费型DV证书。

由于服务器用的阿里云,就去阿里云找了一下有没有相应的证书服务(阿里云的东西太多了,MD一堆菜单里 一顿好找)。

还不错,虽然没有Let’s Encrypt 的免费型,但提供了 Symantec 的免费型,更好。

证书0元购买地址:https://www.aliyun.com/product/cas

详细购买和配置流程参考下面这篇文章:

阿里云Symantec免费型DV SSL证书购买及https配置流程

主域名的证书解决了,还有一个图片CDN域名的证书,图片CDN那里提供了Let’s Encrypt 的免费型DV证书,就直接申请购买了,然后在配置开启https即可,流程比较简单,这里就不详述了。

2:配置web服务器

需要把http请求 301 到 https上

ngin的配置参考:

server
{
 listen 80;
 server_name youyong.top www.youyong.top;
 return 301 https://www.youyong.top$request_uri;
}

3: 测试站点

遇到的问题就是没有安全锁的标识,可看这篇文章:

换成https后,网站还是没有安全标志或安全小锁?

这个是包含http请求导致的。

这个没啥好办法,只有慢慢细致的改了。

我们的http请求主要包括:

  • 图片
  • 公共的JS
  • 图片远程上传

图片的处理 (图片的已经支持https了。)

  • 文章里的图片直接正则替换,替换成https的。
  • 模板里的直接改成https
  • 个别几个外部的图片也重新上传
  • 头像是微信的图片,也支持https,未来会本地化

公共的JS

  • 核实了一下,引入的公共JS不多,包括: 百度统计 微信JS bootstrap,这些都是提供了https访问的,直接修改成https即可。

图片远程上传

  • 图片CDN也是提供了https的

所以整个过程还是比较简单顺利的,就是一个校验修改再校验的过程。

唯一之前有误解的就是 // 使用:

我们也经常看到这样的使用

//upload-images.domain.com/xxxx/xxx/xxxx.jpg

忘了在哪看过,说把 http:// 换成 // 就可以。(当时还有疑惑,这么智能吗)

这种省略URL的协议声明,叫 protocol-relative URL,暂且可译作 协议相对 URL。

这个意思是 当你是https的时候,他的scheme是https http的时候是http

而不是说,你没有https资源他就去请求http的资源。

改完http后,主要工作就基本做完了。

4:站长平台

收录对站长来说有多重要我就不提了,需要在各个站长平台把http的换成https的。

百度站长平台上有个https认证,直接认证一下即可。

Google和bing站长平台,直接再添加一个https的站点即可

360 神马 搜狗都没找到地方添加或者更换。

详情可看:

在百度站长平台如何将http换成https

5:百度统计

统计里面没有更改或者https认证的地方,也不能添加。

智能客服傻不啦叽的, 统计的贴吧发帖和公众号留言都没啥反应。

也不能把htttp的删了,再增加https的吧, 就只是在修改网站资料里把网站首页改成了https的了。

6:上线后测试

其他地方都还正常,就是图片明显的慢,测试的十几篇文章里每篇总有几个图片加载得1分多钟,客服一边说和http访问的是一个资源,一边说可能一些图片还没缓存。这么矛盾的逻辑搞得我们还真有点无奈。

对图片经过多个地区网络的测试,看速度还不错,也就没有再纠结这个问题。

(图片没上线前就该测试 )

7 : 意外小收获

换成https后百度竟TMD不转码了(不过还有待观察)

声明:除非标注“龙剑博客”,文章来源于网络,转载仅用于分享,版权归原作者所有。若涉及侵权,请联系QQ:616338334 。提供贵方版权证明后即刻删除。转载请注明:龙剑 » 网站的https改造实战记录