Cloudflare + 国内 CDN 实战:网站国内外智能分流访问方案总结
前言
当网站访问量逐渐增长,如何在不增加成本的情况下,让国内用户访问更快、国外用户体验更稳,成为了许多站长关心的问题。其实只需要配合使用两个域名,通过 Cloudflare 自定义主机名 + 国内 DNS 厂商分流解析 + 国内 CDN 回源,就可以实现 “国内走国内 CDN、国外走 Cloudflare” 的效果。
这篇文章将通过图文形式,完整记录这一配置过程,无需服务器开发基础,只要你有宝塔面板和两个域名就能操作。
准备工作
- 一台服务器:已通过宝塔面板搭建环境。
- 两个域名:
主域名
:用于最终访问的域名,需支持 DNS 分流的 DNS 服务商(如阿里云、腾讯云、华为云 DNS,或将子域名 NS 指到这类服务)。辅助域名
:绑定在 Cloudflare,在宝塔面板配置后作为源站。
- Cloudflare 账号:用于设置自定义主机名。
- 国内 CDN 厂商:如京东云、阿里云 CDN,用于绑定主域名。
宝塔面板搭建网站并申请 SSL
- 在宝塔面板中新建一个网站,绑定的是辅助域名(如
source.example.com
)。
- 使用宝塔自带的 Let’s Encrypt 功能,为该域名申请 SSL 证书。
3. 确保站点开启 HTTPS 并能正常访问。
配置 Cloudflare 自定义主机名与回源
- 打开 Cloudflare,进入 SaaS 管理界面。
- 新增一个回退源,填写刚才在宝塔搭建的辅助域名。
- 新增一个自定义主机名,使用的是你主域名的子域名(如
www.example.com
)。
- 验证方式选择
TXT
验证。 - 在 DNS 管理服务商(如阿里云)添加 TXT 验证记录:
- 名称(主机记录):只保留前缀部分(如
_acme-challenge
)。 - 值:Cloudflare 提供的验证值。
- 名称(主机记录):只保留前缀部分(如
- 验证完成后,Cloudflare 会提示 “状态有效”。此时主域名通过 Cloudflare 可成功反向代理到源站。
配置国内 CDN 与 DNS 分流
- 在国内 CDN 厂商添加加速域名,填写的域名是主域名(如
www.example.com
)。 - 源站设置:填写宝塔绑定的源站域名(如
source.example.com
),端口为443
,协议为HTTPS
。 - Host 设置为
source.example.com
(用于回源时 Host 头匹配)。 - CDN 厂商会分配一个
CNAME
地址。 - 前往主域名的 DNS 管理后台(如阿里云):
- 设置默认线路为国内 CDN 分配的地址。(然后进行证书申请)
- 添加境内线路(如
China
):CNAME 指向国内 CDN 分配的地址。(可以更改默认线路为境内线路,也可以删除默认线路再添加境内线路) - 添加境外线路:CNAME 指向 Cloudflare 分配的回源地址。(也就是宝塔绑定的源站域名)
配置 HTTPS 与分流验证
- 回到国内 CDN 厂商控制台,申请 SSL 证书(通常免费提供)。
- 确保主域名在国内 CDN 与 Cloudflare 均支持 HTTPS。
- 使用网站测速工具测试(如 ITdog):
- 国内节点访问时路径为国内 CDN 回源。
- 国外节点访问时走 Cloudflare 节点回源。
写在最后
通过这个方案,我们无需改变网站结构,只是通过 “两个域名 + DNS 分流 + 双回源” 的方式,实现了 “国内 CDN 加速 + 国外 Cloudflare 加速” 的双重加速机制。
版权声明:
作者:pddpdd
链接:https://pddpdd.cn/891.html
文章版权归作者所有,未经允许请勿转载。
THE END