以下是 Fastly CDN 的详细使用教程,结合官方文档和实际配置经验整理,适用于个人开发者及企业用户:
一、注册与基础配置
注册账号
- 访问 Fastly 免费开发者账号注册页面,使用国外邮箱(如 Gmail)注册,无需信用卡验证。
- 免费额度:每月 50 美元,约等于 500GB 流量,支持 CNAME 接入1。
创建 CDN 服务
- 登录后进入 Deliver 选项卡,点击 Create a CDN service。
- 填写服务名称(Service Name)、加速域名(Add your own domain)、源站 IP(Add an origin),点击 Activate 激活服务1。
修改配置
配置不正确,无法访问,带host 的,填源站域名或者ip ,如 xxx.domain.com
二、SSL 证书配置
自动签发证书
解析 CNAME
- 证书签发后,Fastly 会提供 CNAME 地址,将其添加到域名 DNS 解析中,完成 CDN 与域名的绑定1。
三、节点优化与加速策略
自选节点 IP
- 由于部分 Fastly 节点在国内可能被阻断,建议手动筛选优质 IP:
- 使用 ipip.net 全球 Ping 工具 测试节点延迟,结合 ITDOG 的 TCPing 功能检查端口可用性。
- 推荐节点(需根据实际网络环境调整):
- 由于部分 Fastly 节点在国内可能被阻断,建议手动筛选优质 IP:
分线路解析
- 在 DNS 服务商处设置分运营商解析(如 DNSPod),将不同运营商用户指向对应的 Fastly 节点 IP1。
四、高级功能与安全配置
缓存策略
安全防护
集成 Magento2(电商场景)
- 使用 fastly-magento2 模块,支持 Geo-IP 检测、边缘缓存刷新、错误时提供过期内容等功能26。
五、常见问题与优化建议
节点不可用
- 定期测试节点可用性,备用节点列表参考:GitHub 用户自选 IP 库。
- 若遇大规模故障(如 2021 年全球中断事件),可临时切换至备用 CDN 服务5。
免费额度限制
- 监控流量使用情况(Fastly 控制台提供实时统计),超出后自动按需计费1。
与 Cloudflare 对比
六、参考资料
通过以上步骤,可快速完成 Fastly CDN 的部署与优化,适用于个人博客、电商平台及全球化业务场景。
七、缓存
以下是创建 Fastly CDN 缓存设置的详细指南,结合官方文档与最佳实践整理:
一、基础缓存配置
强制 TLS 加密
- 启用 强制 TLS,将所有 HTTP 请求自动重定向至 HTTPS,确保数据传输安全。此功能需先配置有效的 SSL/TLS 证书,并在 Fastly 服务中启用。
- 操作路径:Fastly 控制台 → 服务配置 → 强制 TLS 选项 → 启用并上传证书1。
超时设置优化
- Fastly 默认管理员请求超时为 180秒,若需处理耗时操作(如批量导入),可延长至 600秒(上限)。
- 操作路径:管理员后台 → 系统 → 全页缓存 → 高级配置 → 调整 管理员路径超时 值1。
缓存分层策略
二、动态缓存策略
- TTL(生存时间)管理
- 静态资源:设置长 TTL(如 30 天),通过
Cache-Control
或Surrogate-Control
头实现。 - 动态内容(如 API 响应):通过 VCL 代码按路径动态设置 TTL。例如,趋势类 API 可设为 10 分钟:
41if (req.url ~ "^/v1/gifs/trending") { set beresp.ttl = 600s; }
缓存api https://www.fastly.com/documentation/reference/api/purging/
- 静态资源:设置长 TTL(如 30 天),通过
2. 代理键(Surrogate Key)
- 为每个动态资源生成唯一代理键(如
post-123
),当内容更新时,通过键批量清除相关缓存。 - Rails 应用示例:在控制器中设置
set_surrogate_key_header @post.record_key
,模型定义record_key
方法24。
三、缓存清除机制
自动清除选项
- 根据业务需求启用自动清除:
- 产品更新:自动清除关联的产品和分类缓存(启用
清除产品
选项)。 - CMS 变更:更新页面时自动清除页面缓存(启用
清除CMS页面
)。
- 产品更新:自动清除关联的产品和分类缓存(启用
- 操作路径:Fastly 配置 → 高级配置 → 启用对应清除选项1。
- 根据业务需求启用自动清除:
软清除(Soft Purge)
- 将缓存标记为过时而非立即删除,在后台异步更新内容,避免因强制刷新导致性能波动。适用于高并发场景1。
四、高级功能与定制
GeoIP 地理处理
- 根据用户地理位置重定向或展示特定内容(如多语言站点)。
- 操作路径:启用
GeoIP
→ 选择重定向或商店列表 → 配置国家代码映射1。
自定义 VCL 代码
边缘模块(Edge Modules)
- 启用预置模块(如 CORS 头、Sitemap 重写)或集成第三方后端(如 WordPress),通过 UI 快速配置,无需编写 VCL1。
五、监控与故障处理
缓存命中率监控
- 通过 Fastly 控制台实时查看缓存命中率,优化 TTL 和代理键策略4。
超时错误处理
- 若出现 503 错误,检查后端连接超时(
第一字节超时
)和 Shield 节点设置,适当延长超时阈值1。
- 若出现 503 错误,检查后端连接超时(
参考资料
通过以上设置,可高效管理 Fastly CDN 缓存,适用于电商、媒体平台及全球化业务场景。