为什么要换?
Cloudflare 免费 CDN 很好,但国内访问速度有时候不理想。七牛云 CDN 在国内节点多,加速效果更好,而且每月有 10GB 免费流量,个人网站基本够用。
准备工作
一个已经在 Cloudflare 托管的域名(比如
example.com)七牛云账号(已完成实名认证)
如果你的网站主要面向国内,域名需要备过案
第一步:在七牛云添加域名
登录七牛云控制台,进入 CDN 服务,点击 添加域名。
填写你的域名(例如
www.yourname.com或blog.yourname.com)。源站配置:
如果你有自己的服务器(IP 固定),选 IP 地址,然后填你的服务器公网 IP。
如果你用的是对象存储(如七牛云 Kodo),选 七牛云存储。
回源 HOST:选择 自定义,填入你的域名(就是和加速域名一样的那个)。
回源协议:如果你的源站支持 HTTPS 就选 HTTPS,否则选 HTTP。选错也没事,后面可以改。
其他选项(缓存配置)保持默认就行,直接点 创建。
创建后,七牛云会给你一个 CNAME 地址,长这样:
yourdomain-id.qiniudns.com,记下来,待会儿要用。
第二步:在 Cloudflare 修改 DNS 解析
登录 Cloudflare,进入你的域名管理页。
找到你要加速的那个域名(比如
blog.yourname.com)的记录。删除原来的 A 记录(如果存在)。
点击 添加记录:
类型:CNAME
名称:你的子域名(比如
blog)目标:粘贴七牛云给你的 CNAME 地址
代理状态:一定要设为“仅 DNS”(灰色的云朵图标,不是橙色的)
保存。
如果你要加速根域名(比如
yourname.com本身),Cloudflare 支持 CNAME 扁平化,同样操作即可。但是要注意:根域名用了 CNAME 之后,就不能再添加 MX 邮件记录了。
第三步:等待生效并验证
DNS 解析需要几分钟到几十分钟才能全球生效。你可以用以下命令在电脑上验证(Windows 打开 CMD,Mac 打开终端):
1. 检查 DNS 是否已指向七牛云
BASH
nslookup blog.yourname.com
如果看到一堆 IP 地址(比如 183.60.227.41 之类的),而且没有 cloudflare 字样,就说明解析成功了。
2测试 CDN 是否正常工作
BASH
curl -I http://blog.yourname.com
如果返回的
Server是nginx(或者qiniu),说明流量已经走七牛云了。如果返回
Server: cloudflare或者有CF-RAY字段,说明 Cloudflare 还在拦截,请检查第二步中是否把代理状态改成了“仅 DNS”。
如果看到
301 Moved Permanently并且跳转到https://,那是因为你在七牛云开启了“强制 HTTPS”,属于正常现象。
常见问题与解决
问题1:nslookup 正确,但 curl 还是显示 Cloudflare
原因:Cloudflare 的 DNS 扁平化可能会“劫持”流量,即使你关了代理。
解决办法:彻底更换 DNS 服务商,比如用 DNSPod 或阿里云 DNS。步骤:
在 DNSPod 添加你的域名。
去你的域名注册商(比如 Namesilo、GoDaddy)把 NS 记录改成 DNSPod 的。
在 DNSPod 里添加 CNAME 记录指向七牛云。
等生效后再测试。
问题2:根域名(yourname.com)同时存在 A 记录和 CNAME 记录
原因:同一个域名不能同时有 A 和 CNAME,会冲突。
解决办法:删除 A 记录,只保留 CNAME。
问题3:访问 http 总是跳转到 https
原因:七牛云开启了“强制 HTTPS”。
解决办法:
如果你接受 HTTPS,那就保持现状,无需操作。
如果你想同时支持 HTTP,去七牛云 CDN 配置里找到 HTTPS 配置,把“强制 HTTPS”关掉。
费用要花多少钱?
七牛云 CDN 的计费很良心:
项目 | 价格 |
|---|---|
免费额度(HTTP) | 每月 10 GB |
超出后 HTTP 流量 | 0.24 元/GB |
HTTPS 流量(无免费额度) | 0.28 元/GB |
新用户优惠 | 0.1 元买 10GB HTTPS 流量包(有效期12个月) |
个人博客费用估算:
纯 HTTP,月流量 5 GB:0 元
纯 HTTP,月流量 15 GB:约 1.2 元
HTTPS,月流量 15 GB:约 4.2 元(如果买了优惠包,约 1.5 元)
注意:一旦域名开启了 HTTPS,无论用户用
http://还是https://访问,都会按照 HTTPS 价格计费。
总结
把域名从 Cloudflare 迁到七牛云并不难,核心就三步:
在七牛云添加域名,拿到 CNAME 地址。
在 Cloudflare 把域名的 A 记录改为 CNAME,并关闭代理(灰色云朵)。
等待解析生效,用
nslookup和curl验证。
如果遇到流量还被 Cloudflare 拦截,最好的办法是换 DNS 服务商(DNSPod)。七牛云的费用对个人站长非常友好,每月基本免费。
照着这个教程操作,你也能轻松用上国内高速 CDN!

