type
status
date
slug
summary
tags
category
icon
password
众所周知,Cloudflare开启小黄云后,网站的国内访问速度不忍直视,偶尔还直接无法访问。
今天通过Cloudflare for SaaS 的自定义主机名,优选ip,加速国内用户的访问速度。
Cloudflare for SaaS有什么用
概念
官方的说法就是:Cloudflare for SaaS 允许您通过客户自己的自定义域名或虚拟域名将 Cloudflare 网络的安全和性能优势扩展到客户。作为 SaaS 提供商,您可以将 Cloudflare 的产品扩展到客户拥有的自定义域名,将其作为自定义主机名添加到您的区域。通过一套易于使用的产品,Cloudflare for SaaS 可将来自自定义主机名的流量路由到在您的域上设置的原点。参考自官网Cloudflare for SaaS
简单来说,就是允许你把其他域名(这个域名是否托管在cloudflare上都可以)指向你通过Cloudflare代理访问的服务,让其他域名也能享受Cloudflare的安全防护和CDN等功能。
自定义主机名和回退源
- 自定义主机名:你需要加速访问的域名
- 回退源:实际提供服务的域名,这个域名指向源服务器(也可以是cname指向服务)。当用户访问你的自定义主机名时,Cloudflare会从源服务器上获取内容。
配置了这些后,Cloudflare的ip收到访问请求,就会去匹配是否有对应的自定义主机名,如果有,就去回退源获取内容返回给访问的人。
配置教程
准备
1、一个开启了Cloudflare for SaaS的Cloudflare账号(这一步需要绑定信用卡或者PayPal,但校验并不多,有部分卡头可以随便生成就可以绑定,请自行解决),PayPal绑定可参考https://www.moeelf.com/archives/305.html
2、两个域名,其中一个必须托管在Cloudflare上,另一个可以在Cloudflare,也可以不在Cloudflare。
本次使用862888.xyz和freekj.me,我都托管在Cloudflare的,后面用腾讯的dnspod分流国内和国外流量
设置回退源
DNS添加解析,本次需要加速的是vercle上的博客,所以直接按照vercle的要求,自定义域名cname到vercle,如果你是自己的服务器,那A记录解析到服务器ip就行,然后在SSL/TLS菜单下的自定义主机名那里添加回退源,添加后,回退源状态变为有效,回退源就设置完成了
操作截图
设置自定义主机名
点击回退源上方的添加自定义主机名,写上你需要访问的域名,其他保持默认即可,之后验证域名所有权(这个就是在主机名那个域名上添加DNS解析了),添加TXT验证后,1到2分钟,自定义主机名就会变成有效
注意:TXT验证的时候,Cloudflare给出的名称是完整域名的验证记录,添加TXT验证时,名称只需要freekj.me之前的,这里就是_cf-custom-hostname.king和_acme-challenge.king。如果你不清楚,可以直接点下面的 单击以复制。
操作截图
至此,自定义主机名就添加完成了
通过腾讯DNSPOD分流
设置一个子域名到dnspod分流,目前可以自定义线路的DNS服务商有阿里云,DNSPOD,华为云,京东云等,喜欢那个就用那个。
这里用cdn.862888.xyz添加到dnspod,添加TXT验证后,开启解析,然后还需要添加下ns记录(各平台可能有所不同,按照平台要求来就行)
操作截图
dnspod分流解析,可以用A记录指向IP地址,也可以cname指向Cloudflare的优选域名。国外的这里指向1.1.1.1,国内的指向Cloudflare的国内优选域名,实现加速访问
dnspod分流解析
之后就Cloudflare添加解析,把需要访问的域名king.freekj.me cname到cdn.862888.xyz,由dnspod来判断流量,国内流量的到优选域名或优选IP去,加快访问速度。
主域名cname到cdn.862888.xyz
常见问题
1、访问提示重定向次数过多
解决方案:把回退源那个域名的SSL加密改为完全即可
2、访问界面出现404
解决方案:前面ssl加密改为完全,回源是到443端口,访问的域名就需要ssl证书,虽然验证自定义主机名的时候有个证书了,但那个是用于回源之后呈现给用户端的, 在回源过程中不会生效。如果你的回源域名是A记录指向服务器的,那你可以自行申请个ssl证书安装在服务器上,这里是cname到vercle的,在vercle那里添加下自定义域名king.freekj.me, vercle会在自动验证后自动生成ssl证书,就可以访问了
访问速度测试
总体速度在50ms到200ms之间,比没有优化前的5秒好多了。