通过CloudFlare SaaS搭建网站

发布于 2022-04-27  1,177 次阅读


CloudFlare SaaS是什么

这里是官方文档,当然如果你对官方文档了如指掌的话,没必要继续读下去。

如果简单的介绍CloudFlare SaaS的话,那么就是为NS不在CloudFlare的域名提供CloudFlare服务,如果带着这个想法读下去,应该会有些帮助。如果你只是有什么疑惑,或者遇到了什么问题,可以查看最低下面的 #特别说明或者评论区留言。

之后默认使用fallback.com作为回退源,example.com作为将要通过CloudFlare SaaS CNAME接入的域名,IP地址使用0.0.0.0作为参考

CloudFlare SaaS的应用

那么我们可以通过CloudFlare SaaS干什么呢? CNAME接入CloudFlare 。(当然,argo tunnel也可以实现该功能,但它并非今天的主角)。

CNAME接入和NS接入的区别

这或许才是CloudFlare SaaS的重点。我们为什么要CNAME接入CloudFlare SaaS呢?相比于普通NS接入有什么区别呢?

不需要更改域名NS(或者购买 Business 以上订阅)即可使用 CloudFlare 支持。
与 CloudFlare 高级订阅的域名共享订阅。
优选IP。*

同一个zone会导致1xxx类错误,请使用不同的域名进行操作。你可以在这里找到可用的CloudFlare的IP地址(CloudFlare仅提供IPv6访问,不支持优选到IPv6地址)。

从这里开始

设置回退源

打开CloudFlare SaaS面板,设置 回退源

什么是回退源?我该如何设置它?

我们知道,对于一个域名,只有使用A/CNAME记录指向某个IP地址后才可以被访问。

假如,正常情况下我们需要example.com通过A记录指向0.0.0.0,那么现在,我们需要将fallback.com通过A记录指向0.0.0.0,并开启CloudFlare CDN,并将fallback.com填入到CloudFlare SaaS的回退源位置,刷新,等待回退源下显示绿色的 有效

回退源

添加自定义主机名

填入example.com,选择 最低 TLS 版本/证书类型 ,和你可以使用的验证 域名所有权方式/证书验证方法 。并进行验证(请在进行这一步时,将example.com通过CNAME的方式指向fallback.com,以便完成主机名验证,不要试图使用TXT方式验证主机名)。验证完成后便可以访问 https://example.com/ 查看是否正常。

优选IP

相信很多人都是为了优选IP而使用CloudFlare SaaS。但开始之前,请确保你已经完成了以上步骤,所有验证均已通过并通过默认IP测试正常

证书状态主机名状态 为变成有效后,将example.com通过A/CNAME记录指向CloudFlare(反代)的IP/搭建在CloudFlare上的网站(也就是将域名解析到CloudFlare边缘节点)。

如何不出意外,现在访问 https://example.com/ 时,所使用的IP便更改为你的优选IP(毕竟改了dns记录),并且成功放回200。

我们知道,即使Free计划的默认节点,在国外也并不逊色,所以建议搭配国内ns厂商,以实现专门为国内优选

特别说明

1、CloudFlare SaaS本质是CNAME指向原站并获得CloudFlare支持,所以原站需要按照example.com配置,而不是fallback.com。(请正确理解CNAME记录的含义)

2、CloudFlare页面规则/防火墙规则是example.com,并设置在fallback.com zone内。

3、CloudFlare Pages不支持CNAME(CloudFlare SaaS),当然也可以使用Workers反代方式优选IP。

4、同一个zone使用CloudFlare SaaS会导致1xxx类错误。(也就是回退源和自定义主机名都属于相同的zone时会报错,与优选IP无关)

5、关于部分人将example.com的CNAME记录移除后,主机名验证会失效的问题,本人并没有遇见过,或许可以通过国内ns厂商仅优选国内区域的方式解决。

6、根域名并不支持CNAME记录,CloudFlare会将解析出的IP赋予根域,因为使用的并非国内dns服务器,会导致分线路优选失效(如果example.com在CloudFlare)。dnspod等ns厂商更完善,但会与MX记录产生冲突。