Cloudflare Workers绑定第三方域名提供商
摘要
利用 Cloudflare For SaaS 服务,可将第三方域名绑定至 Worker,无需客户修改 NameServer。操作步骤包括:在主域名设置 AAAA 记录 100:: 并开启代理;配置 Fallback Origin;设置 Worker Routes 将流量指向 Worker;最后在 SSL/TLS 添加自定义主机名,并将生成的 CNAME 和 TXT 记录发给客户配置。
默认自定义域名只可以绑定由自己的Cloudflare账号管理的域名,其实由方法可以绑定第三方域名提供商的域名,Cloudflare有个服务叫做Cloudflare For Saas就是专门解决这个情况的。
它的免费额度是可以绑定100个Custom Host Name,然后每超一个就加$0.1
但是虽然说是免费的,还是要绑定付款方式才可以白嫖,和R2一样。
使用场景
接下来假设这么一个场景:
你有一个域名是
xxx.com你给客户做了一个网站部署到了
client-A-worker上客户有自己的域名,不能接受修改NameServer,是
client-a.com你想要让
client-a.com的流量指向client-A-worker
步骤
设置100:: DNS Record
先要设置所有流量的入口
在xxx.com的DNS Record里添加一条新的AAAA记录
类型 (Type):
AAAA名称 (Name):
platform(这个名字可以自定,fallback,proxy都行,platform很清晰)IPv6 地址 (Address):
100::(这是一个“黑洞”保留地址,流量不会真的去这里)代理 (Proxy): 必须开启 (显示为橙色云)
设置 Fallback Origin
在
xxx.com域中,进入SSL/TLS->自定义主机名 (Custom Hostnames)。在页面上方找到 Fallback Origin (回退源) 卡片。
在输入框中填入你上一步创建的地址:
platform.xxx.com,这里的platform也可以随便改点击 “Add” (添加)。
稍等片刻,
Fallback Origin status(回退源状态) 会变为 Active (绿色)。
配置 Worker Routes
把的client-a.com流量,都交给 client-A-worker来处理
在
xxx.com域中,进入 Workers Routes 页面。点击
Add route(添加路由)。路由 (Route):
client-a.com/*服务 (Service):
client-A-worker点击
Save
接入客户域名 client-a.com
每次有新客户时都需要重复的步骤
(你的操作) 在
xxx.com的SSL/TLS->自定义主机名页面:点击 “Add Custom Hostname”。
输入
client-a.com。(最佳实践) 将
Certificate validation method(证书验证方法) 改为HTTP Validation。这能让客户少配一条TXT记录。点击 “Add”。
(你的操作) 复制 DNS 记录,发给客户。
点击刚添加的、处于
Pending状态的client-a.com。你现在会看到两条需要客户添加的 DNS 记录。
你把这两条记录发给你的客户。
(客户的操作) 客户登录 Namecheap (或他的服务商):
记录 1 (最重要 - 流量 CNAME):
类型:
CNAME主机 (Host):
@(如果他要绑 Apex 域名) 或www(如果他绑子域名www.client-a.com)值 (Value):
platform.xxx.com(之前配置的Fallback Origin)
记录 2 (授权 TXT):
类型:
TXT主机 (Host):
_cf-custom-hostname(如果绑 Apex) 或_cf-custom-hostname.www(如果绑子域名)值 (Value):
[Cloudflare 提供的那一长串 UUID 字符串]
