这篇文章拖了挺久的,主要是因为懒,从备案通过到现在这一个月里一直都在折腾CDN,辗转使用了七牛、又拍、腾讯等等几家服务商,最终还是选择了阿里云。

  • 七牛云,没有镜像存储
  • 又拍云,节点较少,部分地区速度慢
  • 腾讯云,有镜像存储,但首次访问未缓存的资源会重定向到源站,暴露源站

先放一张效果图:

cdn-6

配置OSS

创建Bucket

进入阿里云OSS控制台,创建一个Bucket

  • 区域:如果服务器也在阿里云,OSS建议选和服务器同一区域
  • 读写权限:建议私有
  • 其它按需选择即可

cdn-1

镜像回源

进入刚才创建的Bucket,左侧找到基础设置-镜像回源,进入镜像回源并点击设置,创建规则。回源地址可以填写一个指向服务器的子域名,也可以直接填写服务器IP

cdn-2

假如使用的是宝塔且填写了服务器IP,需要在宝塔后台站点管理中,将服务器IP添加到域名管理中。即需要保证能访问到你的文件,否则会回源失败。

cdn-3

  • 至此,OSS配置完成,下面配置CDN。

配置CDN

CDN需要配置2个

  • www.naraku.cn,博客主域名,用于加速博客
  • cdn.naraku.cn,资源/图床域名,用于加速图片等资源

配置资源域名

进入阿里云CDN控制台,点击添加域名

  • 加速域名:填写存放资源的域名,如cdn.naraku.cn
  • 源站信息:选择OSS域名,并在下面域名处点击下拉框选择刚才创建的OSS
  • 在域名服务商处配置CNAME指向CDN分配的域名

进入创建的CDN进行配置,主要配置以下几个地方:

  • 回源配置

    • 回源协议:启用并选择为跟随
    • 私有Bucket回源:如果前面创建的OSS选择了私有读写权限,则这里需要启用
  • 缓存配置

    • HTTP头:

      • 参数:Access-Control-Allow-Origin
      • 值:*
    • 缓存过期时间
地址类型过期时间
/usr/uploads目录30天
/usr/themes/handsome/usr/img目录30天
css,js文件后缀名30天
jpg,jpeg,png,bmp,gif,ico文件后缀名30天
  • HTTPS配置

    • HTTPS证书:自行配置
    • TLS版本控制:关闭TLSv1.0,开启TLSv1.1/2/3
  • 其它选项,如防盗链、性能优化等可自行按需配置。

    • 性能优化中的保留参数不懂配置的建议关闭

配置主域名

同样进入阿里云CDN控制台添加域名

  • 加速域名:填写博客主域名,如www.naraku.cn
  • 源站信息:

    • 如果在服务器上搭建博客,则选择服务器,并填入服务器IP
    • 如果是虚拟空间,则选择域名,并填写空间商提供的域名
  • 在域名服务商处配置CNAME指向CDN分配的域名

进入创建的CDN进行配置,主要配置以下几个地方:

  • 回源配置

    • 回源HOST:开启并选择加速域名
    • 回源协议:开启并选择跟随
  • 缓存配置

    • 参照前面资源域名的配置
  • HTTPS配置

    • 参照前面资源域名的配置
    • 全部配置完毕,确认博客可以正常访问后,可以开启HSTS,提高网站安全性
  • 其它选项可参照前面的配置以及自行按需配置即可

配置其它域名

如果需要配置其它域名,如我这里配置了一个naraku.cn并301重定向到www.naraku.cn,配置方法与前面配置主域名基本相同,并在服务端来配置重定向

其它

如果觉得我的文章对你有帮助,请我吃颗糖吧~