CDN加速
建站问题
部署小网站一般使用的是轻量级服务器,带宽和处理速度一般不高,所以加载时延比较高。如果是部署在平台上而非服务器,境外服务器(国外平台就是略为大方)的链接时延也会更高;另一方面,个人网站容易面临暴露ip的问题,尽管通过域名解析,但是信息交互都是本地的明文ip进行的,例如简单ping一下就可以得到,这也是CDN广为使用的原因。
CDN
内容分发网络(Content Delivery Net,CDN)是一种网站常用的加速服务,利用距离用户最近、时延最低的服务器快速返回资源和响应,提高访问速度。其原理是在域名解析DNS————个人服务器ip之间插入了一个cdn套壳代理,访问目标网站时,DNS会首先将域名解析到cdn中,向cdn服务提供商服务器请求内容,如果这个内容早已以静态资源的方式存储于服务器,那么服务器就会返回该资源,而无需访问原始的低带宽服务器。
另一方面,CDN服务商尤其是大厂,通常有各种策略来提高CDN的返回效率,例如压缩静态资源、选取最优服务器路径、DNS解析路径等,因此能大大访问资源效率、同时也减小了原始服务器流量负载。
部署
采用的服务商是来自多吉云的融合CDN,虽说服务器可能不及腾讯云、阿里云等,但其每月提供20G流量,且能设计封顶策略,能够有效规避小规模的流量攻击。
CDN参数
- 加速网站:目标网站
- 源站地址:服务器IP
- 回源Host:目标网站
- 回源路径:网站运行目录
源站地址一般分为IP和域名两种,如果是部署在个人服务器上,就是填入服务器IP或者已解析到服务器的域名,那么回源Host就是与加速目标网站一致,告诉服务器要访问服务器下哪个网站,回溯路径就是网站的运行路径,注意运行路径不等于服务器文件路径,因为网站根目录是可以被重定向的。
域名证书
由于域名被定向到CDN提供者,因此需要像定向到个人服务器一样上传证书,分别有.pem、.key密钥,通过SSL证书认证防止浏览器阻断不安全链接。
DNS设置
最后一步,修改服务器的DNS解析策略,将CDN提供的CNAME填入DNS解析,也即DNS不再解析到个人服务器,而是通过CNAME解析到CDN厂商服务器。
验证
最简单是通过ping+域名验证,返回的不再是个人服务器ip;
此外可以查看重定向域名是否和CDN平台一致: >nslookup -qt=cname 加速域名
总结
总的来说,对中小型网站CDN是一项有用的技术,采用分布式策略存储网站资源,达到快速响应的目的。当然,如果CDN服务器是境外提供的,效果可能就变成了减速访问了。