博客上云优化小记


先说结论,千万别用千牛云!!

优化结果:从以前的8秒都出不来,到现在秒开:
-w697

最开始是迫于图床需求,之前一直用的sm.ms,最开始速度慢就算了,凑合用一下,到后来把我传的图片ban掉了,导致之前写的文章图片大量404,关键是重新传也传不上..

加上最近写了一篇图片贼多的文章,访问速度巨慢,忍不住就开始找图床。

很早之前看到千牛云每个月免费10G S3对象存储,但是要身份证照片,一直搁置没用,昨天分析完漏洞无事,就一起把之前吃灰的域名都实名了。

之前一直以为满足我图床需求的免费的10g s3能不花钱,后来在配置过程中发现这玩意必须和cdn捆绑使用,好了,七牛云cdn http免费10g流量,用过github page的都知道配置https就是一个按钮的事情,不过问题不大,https的站img用http加载,就是主页有锁,点进文章内容没锁的区别。

-w421

-w558

-w1132

用国内cdn最麻烦的地方在于要备案,这里好在白嫖了一个小组的d0g3.cn域名,省去了很多麻烦。

优化完图片后,访问是快了很多,影响加载的主要因素变成了js和css,然后想顺手把hexo的public目录给拉到s3上。

然后我人傻了,他这个不能上传文件夹就很离谱:
-w920

然后康师傅让我用ftp传上去(他用的又拍云),找了半天连接工具,然后搜怎么用:
-w866

继续找解决办法…
-w845
-w499

最后找了个他们推出的qshell命令行工具,想想也算了,hexo也要用命令行,就无所谓了。

把静态资源同步上去,完了在next里配置一下:
-w492
结果博客成这样了:
-w418
对,https的站加载不了http的js资源。。

这里为了白嫖10g的http cdn流量,我把hexo全部https全换成了http。

改完之后,这里有个很严重的问题,以前拿https访问过的,之后拿http访问,浏览器会有缓存自动跳https,可是我站强制访问https就会像上图那样,没🔐没js。。

这里我想了个骚主意,插了下边一段代码放在了主页:强制跳转成http…
-w694

测试了一下,结果就是在chrome缓存和js的双重加持下,http->https->http,死循环….

这里是关了github page的force https测试的,依旧如此…

屈服了,最后还是选择氪金吧,都花了这么多时间折腾了,不想换厂商了…
CDN和S3分别收费:
-w954
-w689
为了节约流量,我还加了一个这个
-w702
后来@0akarma师傅给我说,这些在又拍云都是免费的,我…

好了,全站https之后,又有新的问题了:
-w1670
woff等字体文件要配一个跨域资源共享(CORS),然后凭着印象记得S3对象存储那有一个资源共享配置:
-w1469

配了之后以为要延迟生效,出去打了个球回来,还是不行,然后网上搜了一下:
-w1077
这波操作属实给我整吐了,在七牛云控制台转了一天,也没看到CDN有跨域的配置。后来想想也确实得在CDN的响应上配置。

后来还遇到几个小问题,woff字体的referer是css,而不是url,这里在防盗链referer校验那加一个白名单就行了:
-w719

到现在,就只有html在github上了,我访问https://static-passer6y.d0g3.cn/,不也是我的博客吗,为什么还要用github page呢,而且还解决了html加载慢的问题。

然后我就想着去加一个@cname解析到static-passer6y.d0g3.cn,在这之前我配了一个mx@记录,用来收邮件的。

一波操作下,阿里云不支持@的cname和mx记录共存…
-w433

-w943

算了不折腾了,除了html文件在github上,其他的都优化了。

最后,折腾了大半天,七牛云控制台给俺整吐了,人生忠告,千万别用七牛云..

第一次上云真香,就是流量有点贵。
-w697