1 引言
1.1 何故开篇
本文记录自己在使用又拍云给网站加速时不太理解、容易出错的一些配置项,同时给他人一些借鉴。
1.2 初识又拍
很多小白站长往往会遇到如下场景——即使使用的是国内服务器,其网站的响应和访问速度依然不理想(在这里我要点名批评困扰了我多年的WordPress!事实上,由于其庞大的市场占有率,人们也往往会将其作为建站的第一选择。然而,他有相当一部分主题是引用的国外资源,而这部分资源由于众所周知的原因,也往往会极大拖慢响应速度)、图片或者视频过多而加载缓慢……
总之,提高页面的响应速度是进阶站长们绕不去的槛。常见的有如下几种方法。
- 缓存插件。在臃肿的WordPress程序中比较常见,可以将动态的网站定期缓存成静态页面,以提高访问速度。然而,好的工具也往往需要付费,效果也不一定满意。
- 深度优化。从代码的层面进行优化,需要一定动手能力,或者钞能力。也会受制于程序版本更新。
- 内容分发。即CDN,“将内容缓存在用户附近”。提供商分布在各处的”节点”从源站定时缓存数据,用户就近访问节点的缓存而非源站的内容。
- 对象存储。将视频、需要引用的国外的资源等存储到别处,极大提高效率。
又拍云为开发者提供帮助计划-又拍云联盟。开发者需要在主页底部保持悬挂又拍云logo并指向特定链接,即可在一年内获得每个月10GB免费存储空间和15GB免费CDN流量,一年后重新申请。
总之,又拍云是许多中小站长免费使用CDN和对象存储的首要选择,对于我个人长时间的使用体验而言,其CDN倒更像是一把”双刃剑”,没有配置好时,反而会降低网站的响应速度,而网上的教程也大多没有参考价值,于是写下本篇文章。当然,付费购买其他厂商的产品也可,使用方法应该大同小异。
2 分发-CDN
以又拍云为例,按其顺序依次记录CDN的几处配置项。
2.1 创建服务
服务名称自定义,在又拍云处全网唯一。
加速域名就是套CDN之前正常使用的域名,也就是你一直使用的域名。但是要使用CDN,就得把加速域名空出来,给源站随便绑定一个二级域名。比如,在Typecho(或者其它Web程序)后台绑定ori.reashal.com,然后加速域名填写www.reashal.com,使用后者访问。
应用场景按需选择,官方说选哪个都不影响加速。
2.2 回源管理
2.2.1 源站设置
源站地址不能和加速域名相同,否则会回源失败(所以说源站随便绑定一个二级域名即可,只需要让节点找到你的Web资源)。
源站地址可以是IP和域名(CDN节点会解析到其真实IP),端口号也可以自定义。
回源协议,我还不太清楚。有时http就够,但是主页不开https就访问不到。
我的主页托管在netlify和GitHubPage,源站地址填写二者提供的二级域名。
2.2.2 回源Host
CDN节点回源过程中需要访问的web站点资源的域名。源站服务器可能有多个站点,回源Host则是指明了资源在哪个站点上(域名)。
我的主页,回源HOST填写的netlify提供的二级域名。
2.2.3 资源迁移
将源站资源迁移到又拍云同一账号下的对象存储服务中。
每次网站有改动记得去更新一下。
2.3 缓存控制
这一部分相当重要,尤其是缓存规则。
如果在缓存过期之前更新了页面,可以去控制台刷新一下缓存。
由于本站生成的每个页面都是形如
/page
的形式,所以缓存规则里添加/*/
形式的目录页。
2.4 性能优化
配置处有个Help
,可以看下,按需选择。实际使用过程中,发现了一个问题,就是开启优化后,部分页面的渲染可能和源站不太一致。
3 加锁-baklib
这一部分只是个人用途,参考价值不高。
已经可以每年免费绑定一次了。
因为baklib在自备SSL证书的情况下仍然需要以100元/年的价格付费绑定,所以用又拍的CDN白嫖一个小绿锁。不涉及资源迁移、页面压缩等,只是这几个域名容易配错,截图记一下。