Cloudflare从入门到精通 3. 无需迁移域名使用Cloudflare
📜 前言
有粉丝反映自己的域名在其他域名服务商里已经设置了很多记录,迁移到 Cloudflare 太折腾了,有没有办法不迁移域名也能用上 Cloudflare 的防护?答案是:可以!今天就给大家介绍 Cloudflare SaaS 回源给你的老网站套上防护
🧰 事前准备
提前准备两个域名
域名 A:你的原域名(例如:debill.com
)
域名 B:托管在 Cloudflare 的域名,只要能被 Cloudflare 解析就行(例如:debill.cc
)
🤖 原理解析
有聪明的粉丝估计会想到在源域名服务添加一个 cname 记录到 Cloudflare 托管的域名上不就 OK 了?类似下面这张图
但是!Cloudflare 出于安全考虑,在没有设置 SaaS 回源的情况下,是禁止这种操作的,访问网站会失败。下面就教大家如何设置 Cloudflare SaaS 回源,无需迁移域名也能使用 Cloudflare 进行防护。
🧾 教程
准备域名
要准备一个域名托管在 Cloudflare DNS 上,具体如何操作参考这篇文章 👉 Cloudflare 从入门到精通 | 1. Cloudflare DNS 快速上手
Cloudflare SaaS 配置
到 Websites
-> 选择域名
-> SSL/TLS
-> Custom Hostnames
进行相应配置。
这里添加 origin.debill.cc
作为我们回源域名,添加完成后会出现 initialing
的提示,然后再进行下一步操作
更改回源域名 DNS 记录
假设我们用 origin.debill.cc
作为回源域名,35.212.136.22
是我们的服务器 ip,那么我们配置一条 DNS 的 A 记录进行域名映射。
配置完成后我们回到SSL/TLS
-> Custom Hostnames
发现 Fallback Origin status: Active 的提示,说明回源域名已经设置完成。接下来再点击 Add Custom Hostname
按钮添加
这里添加你的原域名(该域名可以不托管在 Cloudflare 上)
添加完成后还有一步域名验证的过程,将 Cloudflare 提供的这两条记录添加到你的 DNS 里,等待 Cloudflare 验证成功后,所有配置就完成了
更改原域名 DNS 记录
假设我们原域名的 DNS 映射关系是这样的:debill.com -> 35.212.136.22
, 用户访问 debill.com
相当于直接访问 35.212.136.22
现在我们将 A 记录改成 cname 记录 debill.com -> origin.debill.cc
,其他 DNS 记录不变
验证是否生效
上 itdog ping 一下看看,如果你的源站没有套 CDN 那么不使用 Cloudflare 防护可以直接访问到你的源服务器的 IP,使用 Cloudflare 防护后我们能看到源站地址全部是 Anycast/cloudflare.com
,说明之前的配置已经生效了
🕳️ 避坑指南
需要注意一点:托管在 Cloudflare 用于回源的域名不要使用免费域名,很多免费域名都是二级域名(例如:eu.org
cloudns.be
)我测试下来有些免费域名可以用来回源,有些则不行,所以推荐大家花点小钱买个便宜的域名进行回源
📝 总结
今天介绍了如何不迁移原域名还能使用 Cloudflare 的一系列防护功能,总结为以下几点:
1️⃣ 准备一个域名托管在 Cloudflare 用于回源,注意不要使用免费域名
2️⃣ Cloudflare DNS 设置回源域名指向服务器 IP
3️⃣ 到 Websites
-> 选择域名
-> SSL/TLS
-> Custom Hostnames
进行相应配置
4️⃣ 更改原域名的 DNS 记录,让 A 记录不再指向服务器 ip,而是指向 2️⃣ 中设置的回源域名
5️⃣ 测试是否已经生效
架构图如下:
通过这种方式,只需要简单更改原域名的一条 DNS 记录就可以使用 Cloudflare 进行防护,将网站无缝迁移上 Cloudflare
- 标题: Cloudflare从入门到精通 3. 无需迁移域名使用Cloudflare
- 作者: DeBill
- 创建于 : 2024-08-29 12:00:00
- 更新于 : 2025-01-09 23:09:41
- 链接: https://debill.me//cloudflare-series/cloudlfare-saas-3/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。