Cloudflare + 独立站全套配置
如果你的独立站运行在 VPS 或托管服务上(不是 Shopify/Webflow 等一体化平台),Cloudflare 是最推荐的一站式解决方案:DNS + CDN + SSL + 安全。
完整架构
完整配置清单
一、DNS 配置
| 记录 | 类型 | 值 | 代理 |
|---|---|---|---|
| @ (根域) | A | 你的服务器 IP | 橙色(代理) |
| www | CNAME | @ 或直接填根域 | 橙色(代理) |
| A | 邮件服务器 IP | 灰色(DNS Only) | |
| @ | MX | 邮件服务器 | 不适用 |
| @ | TXT | SPF 记录 | 不适用 |
重要:邮件相关记录(MX、mail A 记录)必须设为 DNS Only(灰色),否则邮件收发会出问题。
二、SSL/TLS 配置
推荐设置:Full (Strict)
前提:你的源服务器已有有效 SSL 证书(用 Let's Encrypt 申请)。
SSL/TLS → Overview → Full (Strict)
SSL/TLS → Edge Certificates → Always Use HTTPS → ON
SSL/TLS → Edge Certificates → Minimum TLS Version → TLS 1.2
SSL/TLS → Edge Certificates → TLS 1.3 → ON
HSTS(可选,谨慎开启):
SSL/TLS → Edge Certificates → HTTP Strict Transport Security (HSTS)
→ Enable HSTS: ON
→ Max Age: 6 months
→ Include Subdomains: 视情况
→ Preload: 谨慎(一旦开启很难关闭)
三、性能配置
Speed → Optimization → Auto Minify: CSS ✅, JavaScript ✅, HTML ✅
Speed → Optimization → Brotli: ON ✅
Speed → Optimization → Early Hints: ON ✅
Speed → Optimization → HTTP/2: ON(Cloudflare 默认开启)
Speed → Optimization → HTTP/3 (QUIC): ON ✅
图片优化(付费功能 Polish): 如果有付费计划,可以开启 Polish(自动压缩图片)和 Mirage(懒加载优化)。
四、缓存配置
Caching → Configuration → Caching Level: Standard
Caching → Configuration → Browser Cache TTL: 4 hours(与源服务器 Cache-Control 配合)
Caching → Configuration → Always Online: ON(源服务器宕机时 Cloudflare 提供缓存页面)
自定义 Cache Rules(推荐):
规则 1:静态资源长期缓存 - 条件:文件扩展名 in (.css, .js, .png, .jpg, .webp, .woff2) - 操作:Cache everything,Edge TTL = 30 days
规则 2:API 不缓存
- 条件:URI 路径以 /api/ 开头
- 操作:Bypass cache
规则 3:用户登录页面不缓存
- 条件:URI 路径为 /login, /checkout, /cart
- 操作:Bypass cache
五、安全配置
Security → Settings → Security Level: Medium(平衡安全和用户体验)
Security → Settings → Bot Fight Mode: ON ✅
Security → WAF → Managed Rules → Cloudflare Managed Ruleset: ON ✅
速率限制(防止爆破攻击):
Security → WAF → Rate Limiting Rules → Create Rule
规则名称:Login Rate Limit
条件:URI = /login AND 请求方式 = POST
速率:每 IP 10次/分钟
动作:Block,持续 10 分钟
六、监控与告警
免费版可以在 Cloudflare 后台看到: - Analytics:流量、缓存命中率、带宽节省 - Security:被拦截的威胁数量 - Speed:性能评分
配合 UptimeRobot(免费): - 每 5 分钟监控 HTTPS 状态 - 宕机时发邮件/Slack 通知 - 免费监控 50 个站点
验证配置
# 检查 Cloudflare 代理是否生效(CF-Ray 响应头)
curl -I https://yourdomain.com | grep -i "cf-ray\|cf-cache-status\|server"
# 期望:
# server: cloudflare
# cf-ray: xxxxxx-SIN
# cf-cache-status: HIT(缓存命中)或 MISS(未缓存)
# 检查 SSL 评分
# 访问 https://www.ssllabs.com/ssltest/analyze.html?d=yourdomain.com
下一节:GitHub Pages 与静态站点部署——免费托管静态站点,配置自定义域名和 HTTPS。