1.
为什么要给小站使用免费CDN
推荐理由与准备工作:
(1)CDN能减少首字节时间、分发静态资源到就近节点;
(2)准备域名和后台登录、原站有能力修改DNS或托管在GitHub Pages/静态主机;
(3)备份原站DNS记录与SSL证书,避免误操作导致网站短暂停服。
2.
推荐一:Cloudflare(最适合通用小站)
开通与基本配置步骤:
(1)注册Cloudflare账号并登录;
(2)在Dashboard点击“Add a Site”,输入你的域名并选择免费计划;
(3)Cloudflare会扫描并显示当前DNS记录,逐条核对并保留原有A/AAAA/CNAME记录;
(4)修改域名注册商处的Nameserver为Cloudflare提供的两条Name Server;等待24~48小时生效;
(5)在DNS页将需要走CDN的记录设为“Proxied”(橙云);不想走CDN的子域设为“DNS only”(灰云)。
3.
Cloudflare的性能与安全设置(实操)
关键开关与参数:
(1)SSL/TLS:选择“Full (strict)”最安全,若原站无证书可临时用“Flexible”但会带风险;
(2)Speed→Auto Minify打开JS/CSS/HTML压缩,启用Brotli压缩;
(3)Cache→Caching Level选择“Standard”,Edge Cache TTL根据需要设短或长;
(4)Page Rules添加规则:匹配静态路径如 example.com/static/* 设置 Cache Level: Cache Everything 和 Edge Cache TTL;
(5)测试:在浏览器开发者工具检查响应头是否出现 cf-cache-status、age 等字段。
4.
推荐二:jsDelivr(适合托管在GitHub、npm的静态资源)
使用方法与示例:
(1)如果你把静态资源放在GitHub仓库,可直接通过 jsDelivr 加速:示例URL https://cdn.jsdelivr.net/gh/用户名/仓库@版本/路径;
(2)无需注册,直接替换原有资源URL;
(3)注意版本管理:使用 @latest 或指定 tag/commit;若需要缓存失效,更新文件名或版本号;
(4)适合JS库、图片、css等公开静态文件,不适合私有内容。
5.
推荐三:CDNJS 与 Google Hosted Libraries
适用场景与调用方式:
(1)CDNJS适合常见开源库,直接引用官方提供的JS/CSS链接;
(2)Google Hosted Libraries只包含部分主流库(如jQuery);
(3)使用这些托管库能节省带宽且被广泛缓存,但若依赖自定义构建需优先考虑 jsDelivr 或 Cloudflare Workers。
6.
原站(源站)配置建议
如何配合CDN优化缓存:
(1)在源站设置恰当的Cache-Control:静态资源建议 max-age=31536000 并配合文件名指纹;
(2)对HTML设置较短的缓存或 no-cache,以便快速更新;
(3)设置合理的Vary头避免缓存混乱;(4)若站点使用Cookies,尽量将静态资源放在无Cookie的子域(例如 static.example.com)。
7.
更高级:通过Cloudflare Workers或页面规则实现文件路由
小站实操要点:
(1)Workers 可用于重写路径或整合多个源,但免费额度有限;
(2)页面规则可缓存带查询字符串的资源,或重定向http到https;
(3)实操示例:创建一条Page Rule,匹配 example.com/images/* 设置 Cache Level: Cache Everything 和 Edge Cache TTL 1 month。
8.
常见故障与排查步骤(实用)
快速定位问题流程:
(1)访问站点出现混合内容:检查控制台,启用Cloudflare的“Always Use HTTPS”和“Automatic HTTPS Rewrites”;
(2)更新资源后仍旧旧版本:到Cloudflare面板执行Purge Cache(按URL或全部),或对静态资源使用文件指纹;
(3)CF显示 522/524:查看源站是否拒绝连接或超时,检查主机防火墙/限流;
(4)看响应头:curl -I https://你的域名,确认 cf-cache-status 是否 HIT/MISS,以及 server/age。
9.
对没有域名或无法改Nameserver的小站主建议
备选方案与执行:
(1)若不能改Nameserver,仍可用子资源的第三方CDN(jsDelivr、CDNJS)替换静态文件;
(2)使用反向代理或第三方反代服务需谨慎,注意隐私与稳定性;
(3)可把静态文件迁移到GitHub Pages或Netlify,再配合Cloudflare的站点代理(若有域名)。
10.
性能验证与日常维护清单
建议操作与工具:
(1)上线后用GTmetrix、WebPageTest、Lighthouse测试首页加载时间与缓存命中率;
(2)定期查看Cloudflare Analytics和服务器日志;
(3)每次静态资源更新务必更改指纹或执行Purge,避免缓存污染。
11.
问:小站使用Cloudflare后,SSL会出问题吗?
答:不会,只要正确选择SSL模式。建议在源站装好有效证书并在Cloudflare中选择“Full (strict)”。若临时无法安装证书可用“Flexible”,但会导致与源站之间是HTTP连接,存在安全与重定向问题,尽可能避免长期使用。
12.
问:如何确保CDN缓存生效并查看命中情况?
答:使用浏览器开发者工具或curl -I 检查响应头,关注 cf-cache-status(Cloudflare)或 x-cache(其他CDN)字段;首次请求通常为 MISS,二次或来自不同节点命中会显示 HIT,同时会有 age 值。
13.
问:免费CDN有哪些限制,何时需要升级到付费?
答:免费CDN通常在功能(Workers、页面规则数量、带宽优先级、WAF规则)与SLA上有限制。流量大、需要高级安全规则或自定义边缘逻辑时建议升级;一般个人小站Cloudflare免费+jsDelivr已能满足大多数需求。