许多小伙伴使用CDN后总是抱怨说自己的网站速度变得更加慢了,还不如直接裸奔来得快。这里要为CDN正名一下,CDN网络只是依据你设置的规则缓存网站的静态资源,静态资源直接通过CDN节点访问可以获得极佳的用户体验。但是,动态资源使用CDN加速效果并不明显,甚至是减速状态。这是由于动态请求都被回源到了你的服务,处理后再分发,多道转发工序必然会让访问变慢。
今天来说一下如何使用CloudFlare CDN加速你的wordpress,让你的网站起飞。
一、CNAME接入方式
对CloudFlare(后文简称CF)有改过了解的小伙伴应该都知道,CF免费用户只提供NS接入这一种网站接入方式,这个方式用起来不那么灵活、生效很慢,还有一个最致命的问题,那就是无法在解析的时候手动选择当前地区访问最优的CDN IP节点。
要实现CF CDN的CNAME接入方式只有一种办法,那就是使用CF为其第三方合作伙伴提供的Cloudflare Partner服务进行接入管理平台。例如著名博主:张戈正在使用的BNXB。这类第三方管理平台通过CF提供的Cloudflare Partner服务使用API的但是管理其用户的域名服务,拥有的最大特点是不会存储任何用户信息,这一点是相对安全可靠的。
接入很简单,使用CF的账号直接登录,即可在平台进行接入操作。这里可以直接选择CNAME接入方式,然后配置我们的源站信息即可:
二、指定CDN节点解析
完成基本的cname接入操作后我们下一步对访问速度其极大作用的指定CDN IP节点环节。接入CF后,CF会随机给你分配两个IP节点作为接入端,一般情况都是美国洛杉矶地区的,这个IP其实是采用的AnyCast技术,当用户访问到时候,会就近分配一个真实的节点IP,以加快访问速度。所以,通过ping工具去探测出来的IP都只是AnyCast入口IP,并不能展示真实的节点IP地址是多少。
不过,要查看真实节点IP的方法也很简单,CF每一个节点都有一个trace接口,访问方式为:http://{节点IP/域名}/cdn-cgi/trace。
通过实测发现,目前国内用户访问默认还是会走美西节点,只有移动和教育网会走香港节点。因此国内用CF的效果仍然不够乐观。如此一来,就会有同学奇思妙想了,既然能找到真实节点,那是不是我可以固定解析到一些速度快的节点呢?比如香港节点。答案是肯定的!!
有了上面CNAME接入的前提条件,我们就可以在域名解析那里任意解析到节点IP了。反之,使用NS方式接入就不能这么任性了。
我通过搜集找到了一批CF亚洲节点,再通过实测最终得出了3个ping值很低(100ms以内)的节点IP:202.86.161.100(澳门)、27.102.67.84(韩国)、23.61.246.100(台湾,速度略慢,但相对其他节点亚洲又好那么一丢丢)。
其实通过Cname接入你可以设定一组特殊的节点:1.1.1.1/1.0.0.1这两个IP作为接入,是不是很眼熟呢?别人对你的域名进行nslookup时,瞬间发现你的网站B格很高。需要注意一点1.1.1.1被国内很多厂商用作内网设备ip,保险起见我们只解析1.0.0.1即可。
图三
最后去你的DNS解析处,进行域名解析就可以啦。
三、强制缓存配置
当我们接入CF CDN加速服务以后,发现在cache里面设置了缓存,但是html等页面并不会被缓存到CDN节点上,访问时还是回源了(体验差评)。张戈博主指出CF CDN默认不会缓存html这类页面,需要设置自定义的Page Rules规则才行。
规则设置和百度云是一样的,CF免费用户只支持3天自定义规则,自行权衡后设置,这里举例一下张戈博主使用的规则。
下面直接搬砖张戈博主使用的规则,不是很了解的小伙伴可以直接套用即可。
①、网站后台:zhang.ge/wp-admin/* 设置为不缓存或细致缓存
图四
②、评论分页:zhang.ge/*/comment-page-* 设置为不缓存或细致缓存
图五
③、网站前台:*zhang.ge* 设置为前后通配都缓存
图六
还有一个地方也需要设置一下,不然不会缓存,Edge Cache TTL。
四、wordpress插件
当我们更新内容时,需要对前台内容进行刷新操作,这一点就比较高级了,对于不懂编程开发的自然来说太难了,Pass掉。直接采用wordress插件来的更加实际。CF官方专门为wordpress开发了相关插件的,直接通过后台安装即可。
图七
插件安装完成后,在插件后台绑定CF控制台账号,即可获得一个简易后台。是不是比想象的简单,自然也这么认为,居然没有繁琐的配置过程,这一点要好评。
转载https://www.wanvi.net/10187.html
感谢您的来访,获取更多精彩文章请收藏本站。

暂无评论内容