CDN配置方式(以腾讯云为例)

引入

CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。

随着网民数量的急剧增长,以及网络攻击的成本降低,越来越多的网站需要通过CDN来加速并保护自己的网站。

正文

开始使用

接入CDN,需要先在CDN控制台添加新域名,填写源站IP,并且获取域名cname记录值,并且于DNS解析处修改为CDN给出的cname记录值。

之后,本地可以通过crtl+R打开运行,之后输入ping 域名 来确认自己的解析是否生效。

缓存规则设置

大部分静态加速CDN提供文件缓存的自定义选项,允许用户通过修改缓存时间来减少源站压力。

注意:动态网站请不要使用"缓存所有文件",否则可能导致网站直接无法访问。

在腾讯云CDN控制台,我们可以看到缓存配置节点缓存过期配置

scode type="red"请注意,不要缓存后台目录,否则后台会出现问题/scode

(typecho默认后台为/admin)

这里给出一个示例,建议使用在个人博客等对静态文件更新不严格的网站。

内容

缓存时间

全部

0秒

mp3;wav;wmv;rmi;aac

7天

jpg;jpeg.png;gif;bmp;webp;pcx

7天

js;css;txt;xml;shtml

30天

php;jsp;asp;aspx;html

0秒

*温馨提示:腾讯云CDN的缓存策略是越靠下优先级越高,如果您是其他CDN,请根据实际用户文档进行配置!

如果博客存在视频、急速下载等功能,可以按需缓存。(这里强烈推荐动静分离、图站分离,主站与其他文件分开缓存,可以最大承担优化体验)

HTTPS配置

这是目前我在群里面发现萌新问的最多的问题,这里统一解答一下。

首先,HTTPS证书在同一台服务器上,要么全部使用,要么全部不要使用,否则可能会导致源站IP泄露。

配置HTTPS证书的方式通常有三种:

①半程加密:在CDN处配置证书,用户访问之后会与CDN建立安全连接保障数据安全。

②全程加密:CDN处、服务器处均有证书,用户访问之后与CDN,CDN与服务器之间均为安全链接。

③严格加密:全程加密的基础上增加对证书的验证以保障数据绝对安全。(正常情况下无需开启,可能导致网站报错)

如果要配置证书,不存在在服务器处配置证书后CDN处不配置,否则会出现报错,显示为CDN节点的默认证书。

同时,如果CDN支持OCSP装订 HSTS强烈建议开启,前者可以提高速度,后者可以加强HTTPS安全性。

减少损失

大部分CDN为按量计费,可能会被恶意盗刷,以下给大家提供一些防攻击的CDN端策略。

①CDN如有提供防CC功能直接打开即可,手动配置建议设置为3秒5次

②CDN没有提供防CC功能(比如腾讯云):图站分离的情况下带宽封顶配置设置为2M,若出现频繁超限可以适当增加

③IP访问限频配置:若主站完全不存图和静态文件,可以设置为20及以下,若有大量图片建议50+,出现加载不全可以适当增加

④下行限速配置:腾讯云CDN下行限速限制的是单一节点,只要不是密集访问,一般不会造成影响,建议设置为256KB/s(换算之后约为2M带宽)

补充说明

使用CDN的时候,务必确认CDN稳定性,切莫贪便宜。

出现任何问题可以工单询问客服,大厂一般都会解决。

文章同时发布在忆梦小站:https://www.onyi.net/archives/428.html