ESC 关闭 Ctrl+K 打开

如何境内外分流同时使用ESA,EdgeOne,Cloudflare CDN

为你的网站优化线路
如何境内外分流同时使用ESA,EdgeOne,Cloudflare CDN

前言与准备

在建站时,为了在全球可用区都获得最快的访问速度和防止被打死,我们显然不能只使用单一 CDN。正确的做法是使用 DNS 策略将用户流量按地区分流到不同的 CDN 服务商。

本文提供 Server(有源站)和 Serverless(Pages / Workers)两种配置教程。

源站接入

源站配置方式需要两个顶级域名:

  • 访问域名:如 blog.yaooa.cn,托管在支持 GeoDNS 的 DNS 服务商(阿里云云解析 DNS、腾讯 DNSPod 等)
  • 中转域名:托管在 Cloudflare(没有的话可购买几块钱一年的 xyz 域名)

Pages 接入

Pages 方式仅需一个访问域名即可。

源站 / Pages 配置

源站方式接入

适用于有后端的服务,例如 Halo、WordPress 等动态站点。

先确保你的网站能正常访问,然后将中转域名解析到源站 IP 地址(开启 Cloudflare 小黄云): CloudFlare设置

接下来前往 SSL/TLS -> 自定义主机名 ,设置回退源,首次使用需要先订阅 Cloudflare for SaaS 功能:

首次使用需要先订阅 Cloudflare for SaaS 功能。该功能本身免费(100 个自定义主机头以内费用为 0 元),但订阅需要绑定支付方式(Paypal、Visa/MasterCard 等)。

回退源填写刚刚设置的中转域名,然后点击添加自定义主机名: 自定义主机名设置 自定义主机名填写你的访问域名:

自定义主机名配置

Cloudflare 会提示添加两条 TXT 记录,分别用于验证域名所有权和证书颁发,按提示添加即可。

Pages 方式配置

适用于静态站点,如 Astro、VuePress、Hexo 等生成的 Pages 站点。

先将你的 Pages 推送到 GitHub 仓库,然后在各平台点击对应入口操作:

部署完成后,在三个平台分别添加你的访问域名(如 blog.yaooa.cn):

EdgeOne

CloudFlare

ESA

此时你的站点已接入三家 CDN,但由于尚未添加 DNS 记录,还无法正常访问。

设置地理分流

源站接入

以阿里云云解析 DNS 为例:

DNS 配置步骤
  1. 添加 CNAME 记录:访问域名 → 中转域名,请求来源选择境外
  2. 再添加 ESA、EdgeOne 的 CNAME 记录,请求来源选择中国地区

AliDNS

完成配置后,你的域名即可正常访问并应用了分流。

Pages 接入

以阿里云云解析 DNS 为例:

DNS 配置步骤
  1. 解析访问域名到 Cloudflare Pages 提供的 CNAME 接入地址,请求来源选择境外
  2. 再添加 ESA、EdgeOne 的 CNAME 记录,请求来源选择中国地区

AliDNS

完成配置后,你的域名即可正常访问并应用了分流。

效果展示

效果展示

Cloudflare 基本上不可能被打爆,但 ESA 和 EdgeOne 在流量巨大时可能被阿里和腾讯拒绝服务。

请务必在 ESA / EdgeOne 设置拒绝海外访问,并添加适当的安全策略。因为攻击 IP 基本都是海外,国内 IP 实名且价格昂贵,基本上不容易被打。

如何境内外分流同时使用ESA,EdgeOne,Cloudflare CDN

https://dokiu.example.com/blog/cdngeouse/
作者
Dokiu
发布于
许可协议
CC BY-NC-SA 4.0

评论区

评论加载中...