实现国内与境外使用不同的CDN服务

前言

本博客已经使用了阿里云的CDN及全站加速(DCDN),但是都只是大陆地址的,对海外的IP访问并没有加速,如果使用海外IP,自动使用cloudflare的CDN,而且利用cloudflare也能减少DDos的海外IP攻击,一能加速,二能防护。何乐而不为呢?

image-20230111112741033

逻辑图

我的思路是这样的,国内IP自动使用阿里的DCDN+OSS+CDN,境外IP的自动解析到CloudFlare套一个海外的反向代理服务器。

image-20230111155038602
思维图

过程

这里主要记录一下境外IP段的只剩,国内IP段的没什么好讲的。nginx反向代理可选项,这个纯是多做一层缓存,不设的话,CloudFlare的CDN也会缓存的

需要

海外服务器一台(非必须)

CloudFlare服务NS域名一个:sosel.net

信用卡、paypal

一个是国内IP”解析到阿里云提供的DCDN域名(cname地址);一个是“境外”解析到nginx反向代理服务器mb.sosel.net域名(cname)后面会提到。

CloudFlare

第二步,在CloudFlare上操作,利用CloudFlare提供的CloudFlare for SaaS实现第三方NS域名cname加速

2-1:登录CF,进入sosel.net域名——DNS——增加子域名mb.sosel.net指向我的反代服务器——打开代理状态

image-20230111124016142

2-2:SSL/TLS——自定义主机——开通CloudFlare for SaaS

image-20230111120736493

2-3:开通需要信用卡,没有信用可以使用paypal,可以使用储存卡,完成验证开通

image-20230111123406834

2-4:确认付款,实际并没有扣款,只是验证信用卡

image-20230111123445179

2-5:已完成订阅,可使用

image-20230111123534605

添加“回退源”,这个就是我们dnspod要解析到这里的,可以视为自己仓库的CloudFlare第三方ns记录吧,这一步已经得到了一个cdn的别名cname域名

image-20230111125156218

添加我的主域名,证书Cloudflare 现在为购买通用 SSL 证书的订单发放备份证书。了解更多感谢

image-20230111125347327

DNSpod

第三步:登录dnspod

3-1:验证域名,就是到主域名添加一个txt记录,来证明这域名是你自己的。是合法的。

image-20230111125702942

3-2:再添加一个证书验证的TXT 记录

image-20230111150509114

3-3:三个验证都通过后,都是有效状态了,为了安全起见,我添加多一个sosel.mailberry.com.cn做测试,成功了再解析主域名

image-20230111152548992

这样就有了境内境外和自动解析与分流了。

境外服务器上

第四步:nginx反向代理

4-1:配置反向代理服务器 打开hosts文件 在/etc/下

image-20230111150400897

vi /etc/hosts

增加三个域名解析到源服务器IP地址

4-2:新建网站

image-20230111150615126

4-3:反向代理

image-20230111142138174

4-4:添加SSL证书

一开始,我以为CF已经3-2的时候,已给我备好证书了,我就没添加,一直出错,建站还是要放上自己的证书呀

image-20230111150849416

4-5:查验

image-20230111150940146

这时候,能正常打开了,说明步骤都是通的,证书也显示与3-2的一至了,google颁发的

image-20230111151135264

查看已经使用了CloudFlare服务提示的CDN服务了,应用到主域名,至上所有步骤完成。

总结

反向代理那个主要是等于在海外服务器做个镜像,本身就是一种缓存了,也有一定的CDN作用,同时再套上CloudFlare,那海外基本就等于全用上CF了,但如果海外服务器与源服务通信很差,那就适得其反。需要注意的是CloudFlare的CNAME还是要安装自己的SSL证书。

生成海报
点赞 0

暂无评论

发表评论

您的电子邮件地址不会被公开,必填项已用*标注。

相关推荐