想要加速网站访问无外乎将静态文件CDN托管,一些免费云加速有debuff效果,而一些收费CDN自定义域名需要备案,使用https://images.yasking.org/technology/1469776945/01.png
外链肯定没有使用https://img.ishell.me/img/01.png
看着开心,鉴于此,查找了一下国外的CDN服务商,选择了口碑不错的keycdn为网站加速
keycnd空间类型简介
他家的CDN服务分为pull zone
和push zone
-
pull zone
就是加速访问域名,你告诉它你要加速的网站如http://example.com
,它分配给你一个域名blog-4xx7.kxcdn.com
,通过这个域名访问就是通过cdn访问网站了,你可以简单的在你的网站程序中将原先的资源名称替换成CDN,就可以加速你的资源加载了。但是如果你的网站有不少静态页,用户是不会直接通过这个CDN访问网站的,那么就需要再指定一个blog-4xx7.kxcdn.com
的别名,比如http://www.example.com
,这个在keycdn的面板Zonealiases添加记录,并且在你的域名服务商处添加CNAME指向,这样,当别人访问http://www.example.com
的时候就是通过CDN来访问你的网站了 -
push zone
就是云存储,把你的照片等文件上传到里面,然后就可以加速访问了。 同样,它会分配给你一个域名,你可以使用这个域名来访问你的资源,不过既然用keycdn,那肯定是要绑定自己的域名,这个也在Zonealiases添加记录并添加域名商处的CNAME记录
好了,其实很简单的概念,我比较罗嗦...
创建letsencrypt的push zone
之前创建的网站是HTTPS的,那就需要创建HTTPS的pull zone
和push zone
,不然会导致CDN不能通过HTTPS访问,图片存储也会因为HTTP导致浏览器会给一个感叹号
先来创建一个支持HTTPS的push zone
,官方文档:Use LetsEncrypt With KeyCDN to Enable TLS
- 创建
push zone
类型空间,点击Show Advanced Features
加载更多选项,在SSL选择框选择letsencrypt
- 添加DNS记录,如
img.ishell.me
指向img-4xx7.kxcdn.com
,等待其生效,可以访问DNS检查工具查看其解析情况DNS Check Tool - 在
Zonealiases
处添加img.ishell.me
指向刚创建的img
空间,静等设置完成即可通过https://img.ishell.me
访问图片存储
PS: 需要注意的是如果之前胡乱创建过别名,须先删除,在域名解析生效之前,不能添加Zonealiases
创建Custom SSL的pull zone
作为一个静态站,没有动态内容,所以整个网站都是可以通过CDN进行加速的。刚才介绍pull zone
的时候已经介绍了使用方法和设置别名,想要https://blog.ishell.me
通过CDN访问博客,那么在源网站处就不能用这个域名,不知道正不正确,我的想法是再创建一个https://blog2.ishell.me
域名,这个域名可以直接访问服务器,然后https://blog.ishell.me
指向CDN,CDN再指向https://blog.ishell.me
就可以实现整个静态网站的加速了。
所以,需要继续使用在上篇Lets Encrypt and HTTP2中介绍了的自动申请Let's Encrypt的脚本,使用脚本可以生成证书,不同的域名,证书是不一样的。
我简单的把之前的用于生成证书的目录复制了一份,然后在副本中修改配置信息,记得添加DNS记录,修改nginx配置以便验证用,这时,使用https://blog2.ishell.me
可以正常访问网站就说明配置成功,接下来开始创建pusll cdn
为网站加速
- 首先创建一个HTTP的
pull zone
- 添加DNS的CNAME记录,如blog到
pull zone
的默认域名 - 在
Zonealiases
中添加别名 - 编辑
push zone
,在Show Advanced Features
中为SSL选择custom
- 在新出现的
Custom SSL Certificates
中添入脚本生成的example.chained.crt
内容,在Custom SSL Private Key
内填入example.com.key
的内容,静等设置完成,即可通过https://blog.ishell.me/
访问CDN,有缓存的内容不会再请求源站
当需要更新页面的时候,可以点击Manage下的Purge等选项清理缓存
PS:登陆key-cdn的FTP时反复登录不上时,反复琢磨,添加代理登录成功...虽然FTP不能直达,不过经测试,存放的图片访问速度还是不错的,从github page的温床中搬出来,虽架设完成也使用了CDN,但是无论是图片内容的替换,以及网站速度优化,安全方面的优化等等,想让一个网站在服务器上稳定运行,折腾才刚刚开始