早就听说可以利用SaaS回源来对网站进行加速,但是一直没有尝试过,今天有空便试了一下,特地分享出来供大家参考。

1 SaaS回源介绍

这一节主要是简单介绍一下利用SaaS回源加速网站的原理,不感兴趣可以直接跳过

1.1 什么是SaaS

简单的说来,SaaS(Software as Service,软件即服务)就是指:当你想要开展某个业务的时候,不需要自己去编写和部署代码,而是找到现成的软件供应商,通过互联网直接使用他们提供的服务。

比如你使用Gmail发邮件、用百度网盘存储文件、用Netflix看视频等等,这些都是通过互联网访问某种服务,所以他们都属于SaaS。

1.2 什么是SaaS回源

对于使用SaaS的用户来讲,可能希望通过自定义的域名来访问服务。

比如你的公司购买了Gmail的服务,但为了彰显公司品牌,你们不希望使用@gmail.com的后缀,而是用公司自己的域名@xxx.com,这个时候就需要用到SaaS回源。

配置好SaaS回源后,访问xxx.com的请求就会被转发到gmail.com进行处理。

我们在Github Pages搭建个人博客,绑定自定义域名的时候,其实也是类似的道理。

1.3 为什么能利用SaaS回源对网站加速

对于静态资源(如图片、CSS、JS 等),Cloudflare 在全球的分布式节点可以缓存这些内容。当用户请求这些资源时,访问路径是:浏览器 → Cloudflare 节点(国内/最近) → 直接返回缓存内容

而原来的访问路径是:浏览器 → 国外源站

显然,配置了SaaS回源后,不需要请求原站,所以访问速度会快不少。

2 概述

需要用到的:

  • 【必须】 你希望加速的域名a.com(不用托管到Cloudflare)
  • 【必须】 回源域名b.com(必须托管到Cloudflare)
  • 【必须】 国外信用卡,用于绑定Cloudflare,推荐使用wildcard
  • 【非必须】 DNSPod,用于将海外线路国内线路分开解析

步骤概述:

  • b.com托管到Cloudflare,并解析到你的服务器(比如Github Pages)
  • 配置Cloudflare SaaS回源(此功能免费,但需要绑定信用卡),将b.com作为回退源
  • DNSPod上,配置a.com的DNS,将其指向Cloudflare

3 详细步骤

3.1 注册CloudFlare,并托管b.com

注册登录CloudFlare,把b.com添加进去,并查看Cloudflare分配的NS服务器。

image-20241118121329105

在你的域名注册商那里,把DNS服务器设置为上面那两个ns域名

image-20241118121431160

设置完域名托管后,需要等待一段时间才能生效。如果这一步等了很久还是没有生效,可以在域名注册商那里删除cloudflare的记录再重新填写。

image-20241118121520009

当域名状态变为活动时,表示托管成功

image-20241118123138817

3.2 启用CloudFlare for SaaS

进入SSL→自定义主机名

点击启用CloudFlare SaaS。

这里需要绑定外国信用卡。没有外国卡的可以使用虚拟卡,推荐Wildcard,2年期开卡费10美元。

Wildcard开卡后,把信息填写进去就行。

image-20241117144610063

3.3 解析回源域名

进入到b.com的管理界面-> DNS -> 记录

b.comA记录或AAAA记录到你的真实网站服务器IP,我这里是解析到Github Pages服务器上的。

image-20241118123417832

3.4 添加回源

进入到b.com的管理界面-> SSL/TLS -> 自定义主机名

添加回退源,回退源地址为刚刚解析的b.com

image-20241118123836262

3.5 添加自定义主机名

添加回源成功后,在同样的界面看到有效了。

接下来添加自定义主机名。

主机名为你的希望加速的网站域名a.com

其余的按照图片上的填写

接下来到DNSPod,为a.com添加下面的两条记录(前提是已经将a.com托管到了DNSPod),用来验证域名所有权

成功后稍等片刻,再去CloudFlare -> SSL/TLS -> 自定义主机名 刷新检查,等到证书状态和主机名状态都为有效则成功。

image-20241118134012695

3.6 a.com解析指向

到这里我们在DNSPod设置a.com的域名解析处

将境内线路解析到shopify.com

境外线路解析到1.0.0.5(Cloudflare服务器在境外的IP)

之所以要解析到shopify.com,是因为shopify.com也使用了Cloudflare的服务,所以它的域名是指向国内最快速的Cloudflare的节点的。

除了shopify.com,也可以解析到其他使用了Cloudflare服务的域名,比如csgo.comvisa.com等等。

image-20241118133609278

最终a.com的dns记录如下:

image-20241118134058046

3.7 设置SSL

在CloudFlare进入到b.com的管理界面-> SSL/TLS -> 概述 中将SSL/TLS加密模式改为完全

image-20241119165421221

到此,就完成SaaS回源的配置了。

当我们访问a.com的时候,请求首先转发给Cloudflare的境内节点。

然后境内节点会发现a.comb.com的自定义主机名,就会直接将缓存的b.com的内容返回给浏览器。从而达到加速网站的目的。

访问和验证

使用itdog测速,可以看到速度明显快了不少。

image-20241119165911939

参考文章: