EUserv纯IPV6国外vps使用CloudFlare CDN加速真的太爽了!

前几天申请到了一台永久免费的EUserv德国IPV6小机,放着也是放着,干脆注册一个不常用的域名来玩玩[380.one],准备做个380网址导航站。


不过,真正用过国外服务器的朋友都知道,受『功夫王』的影响,国外服务器一到傍晚就会抽搐不已。于是考虑套一层CDN来缓解下,而且也可能帮忙扛一扛恶意攻击什么的。


CloudFlare(后文简称CF)是什么,怎么设置我这里就不赘述了,大家可以网上搜下CF的详细使用教程,有非常多的网友、博主分享了图文并茂的教程。下面主要是记录、分享一下380网址导航在使用CF中发现的一些经验或技巧,希望给在用或将要用CF的同学提供一些参考。


一、CNAME接入方式



了解过CF的同学可能知道了,CF免费套餐只能通过NS方式接入。这个方式用起来不够灵活、生效很慢,而且最重要的问题是没法在解析的时候手工解析到CF节点IP地址。


要实现CF的CNAME接入方式也很简单,这里使用第三方的CF管理平台即可,比如380网址导航使用的是:挖站否 。这个平台通过CF的账号来操作域名,所以他们把CF的所有功能选项都本地化、中文化了,极大的降低了国内用户的使用门槛!当然,最吸引我的还是可以使用CNAME接入方式。


接入很简单,注册平台账号并参考提示绑定CF的API账号,即可在平台进行接入操作。这里可以直接选择CNAME接入方式:

1.png

如果觉得描述理解费劲,不知道怎么填写,其实也可以先选择DNS接入方式,然后在平台可以再次转换为CNAME方式。这个平台可以随时在CNAME和DNS接入方式之间互相转换:


接入完成后,我们可以参考网络上前人分享的一些经验,优化一下配置(都是中文的,这里我就不一一介绍了),平台会给出一个可用的CNAME记录:


这时候,我们就可以在原来的域名管理(比如dnspod、万网等)那里,将之前的@或WWW记录解析到这个cname,就完成了CF的接入了。

2.png

二、指定节点解析



如上文图6最后所示,接入CF之后,CF会给域名分配一个入口IP,一般是美西洛杉矶那边的。这个IP其实是采用的AnyCast技术,当用户访问到时候,会就近分配一个真实的节点IP,以加快访问速度。所以,通过ping工具去探测出来的IP都只是AnyCast入口IP,并不能展示真实的节点IP地址是多少。


不过,要查看真实节点IP的方法也很简单,CF每一个节点都有一个trace接口,访问方式为:http://{节点IP/域名}/cdn-cgi/trace。比如要查看380网址导航的真实节点地址,则访问 https://380.one/cdn-cgi/trace 。


通过实测发现,目前国内用户访问默认还是会走美西节点,只有移动和教育网会走香港节点。因此国内用CF的效果仍然不够乐观。如此一来,就会有同学奇思妙想了,既然能找到真实节点,那是不是我可以固定解析到一些速度快的节点呢?比如香港节点。答案是肯定的!!


有了上面CNAME接入的前提条件,我们就可以在域名解析那里任意解析到节点IP了。反之,使用NS方式接入就不能这么任性了。


CF的具体节点IP这里就不公布了,感兴趣的自己去谷歌、百度搜下看看。


这样一来,电信和联通2个大户,本来是走美西慢出翔,现在就可以走两个相对高速的节点了,速度得到极大提升!而默认线路使用CF默认分配的AnyCast入口IP,一是移动运营商用户可以走香港线路,二是为了兜底。说到兜底,这里不得不再分享一个dnspod的使用技巧——D监控:

3.png


三、强制缓存配置



当我接入CF之后,我发现虽然我在cache等配置里面设置了缓存,实际上页面并没有缓存到CDN节点。最终,通过官网的帮助文档,发现CF默认并不会缓存html页面(文档地址),而需要设置自定义的Page Rules,这个和百度云加速那个自定义规则其实一模一样!所以说,百度云加速其实就是『借鉴』CF来设计的。既然一模一样,因此可以参考我之前分享的百度云加速自定义规则设置来设置CF的Page Rules了,


还是和百度云加速一样(或者说百度云加速和CF一样),免费套餐只能设置3条规则,因此不愿意花钱的我们也就只能如图设置了:除了后台和评论分页不缓存,其他一律缓存。如图所示,其中还有个最关键的地方,Edge Cache TTL这个选项必须要设置一下,否则依然不会缓存的哦!

4.png

虽然有些粗放,但是对于个人博客是可以接受的,除非有什么特殊页面也要求不缓存时,可能无法满足。当然,如果你确实需要更多规则,也可以花5刀/月额外购买5条:


另外,我从CF帮助文档看到,Page Rules其实是可以根据cookies来配置页面规则的,当时我没找到,应该是收费版本才有。就是不知道5刀购买的5条规则是否可用通过cookie实现更加灵活点配置。描述如下:


How do you specify cookie names for Bypass Cache Cookie or Cache on Cookie?
Note that Bypass Cache on Cookie is available only on Business and Enterprise plans & Cache on Cookie is Enterprise only.
You can specify multiple cookie names by using the OR “|” operator. For example, to match cookie1, cookie2, or cookie3, you would write: cookie1|cookie2|cookie3. You can also use the wildcard “.*” operator, i.e. cookie1.*.


四、WordPress插件



使用CDN之后,很多朋友可能会被缓存困扰,比如内容更新,前台却因CDN缓存死活看不到最新内容,可谓乐也缓存、烦也缓存。因此,每次我使用一个新的CDN,都会写一些配套的缓存自动清理代码(我没用过的,自然也不会花时间去研究的啦~~),比如之前分享过:


  1. WordPress发布/更新文章、提交/审核评论自动清理腾讯云CDN缓存

  2. WordPress发布/更新文章、提交/审核评论自动清理阿里云CDN缓存

  3. WordPress发布/更新文章、提交/审核评论自动清理VeryCloud缓存


这次,也不例外。而且CF明显有更加成熟的API接口,正打算开撸的时候,我发现了新大陆!其实CF有专用的WordPress插件,名称就叫Cloudflare。我们只需要在后台插件界面搜索安装即可:


安装后,在插件设置界面登陆CF账号,就可以得到一个简易版的CF控制后台了:


当然,这些功能我们在官方或者第三方平台都能配置,只能说是锦上添花。而我们最关注的功能其实是再更新内容时能自动删除CDN缓存,插件是否支持?答案是肯定的!


如此一来,我就不用撸代码,你们也就不用折腾代码啦!真的爽歪歪!


扫描二维码推送至手机访问。

版权声明:本文由李灿灿发布,如需转载请注明出处。

本文链接:https://licancan.com/13.html

分享给朋友:

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。