编辑整理:整理来源:搜狗问问,浏览量:66,时间:2023-04-10 12:32:01
说起CDN来,很多博客站长们应该都很熟悉吧!但是要说到用好CDN可能很多站长们就不见得一定那么自信了!明月自从前年开始使用CDN以来也是不断的折腾来折腾去的,可以说能叫上名字的国内CDN几乎都用个遍了!
图片来自明月登陆的博客(blog.ymanz.com)
今天明月就结合自己的经验给大家讲解一下“如何用好CDN加速”,所谓的“用好”其实就是指真正的起到加速的作用,无论是前端的用户访问还是服务器端的稳定运行。 CDN 的核心思想就是“动静分离”, WordPress 大家都知道,这是一个“动态”的网站平台,如何让 CDN 只缓存加速 WordPress 的静态文件就是最关键的。
何为动态、静态
简单点儿来说,这里的动态和静态是只针对服务器和客户端浏览器来说,动态是指需要服务器端经过运算调取数据库后返回的数据,静态是指以文件形式存储在服务器上的数据。从过程上来看动态的效率要低一些,静态的要高一些,其实就是中间运算和数据库查询调用这个环节的差异而已。具体表现到文件一般就是动态的是指php、asp、jsp这类需要服务器端运算的代码文件,静态的一般是指html、jpg、png、jpeg等等这类文件,虽然html也是代码,但这些代码都是浏览器来运算的,所以对服务器来说也是静态的。
至此,大家就明白了, CDN 加速其实就是把服务器上的静态文件都放到 CDN 各个节点上面,然后用户访问的时候, CDN 会分配一个离用户最近节点给用户访问,这样就达到了提速的效果。比如:明月是南阳的,当访问一个采用了 CDN 加速的站点的时候,就会给我分配一个洛阳的 CDN 节点来调用站点相关的静态文件,这样当然比到网站服务器所在地上海去调用要高效的多了。
那么我们在部署 CDN 的时候只需要做到下面几点就可以了:
1、只让 CDN 获取站点的静态文件资源,也就是缓存规则里要指明只缓存静态文件,因为这类静态文件一般都不会频繁的修改,所以建议缓存时间可以设定长一些,一般7天为宜。
2、 WordPress 站点一定要开启“伪静态化”,也就是让 WordPress 呈现的网页最好是.html文件。
3、服务器端要保证对 CDN 节点是开放的,也就是要将 CDN 节点IP加入到服务器防火墙“白名单”里,否则 CDN 会频繁的回源服务器(造成这个主要原因就是服务器防火墙有时候会把 CDN 节点给拦截掉,所以加到“白名单”就可以规避这个问题了),造成服务器负载增加甚至宕机被关停。
很多站长们在部署 CDN 的时候都是做到了前两条,忽略了最后一条,虽然有的时候也是可以正常使用的,但是一旦 CDN 某个节点出现运算错误频繁回源就会出现服务器负载瞬间加大,如果是虚拟主机的话就会被运营商关停(比如万网的虚拟主机等。),同时还会在 CDN 后台的统计里出现回源率高的现象也就是 CDN 缓存命中率奇低的问题。只要做到上述三点基本上你的 CDN 部署已经是成功的了。剩下的就是让 CDN 慢慢的来根据用户访问情况自动缓存即可, CDN 用的越久其加速表现越好就在这里,只有用户访问请求的 CDN 才会让节点去调用服务器上的资源。这些资源在节点上保存的越多, CDN 缓存命中率就越高,加速效果也就越明显。
(PS:如果是个喜欢折腾的站长,比如经常会改动站点主题的CSS、JS文件的可以 CDN 控制后台里取消CSS、JS文件的缓存即可,毕竟频繁的让 CDN 更新缓存会对服务器造成一定的负载压力的。)
图片来自明月登陆的博客(blog.ymanz.com)
关于最后一条里提到的[将 CDN 节点IP加入到服务器防火墙“白名单”里],这点对于使用“虚拟主机”的站点是需要服务器管理员来操作的,一般为了安全考虑都不愿给添加的,这个目前明月也没有很好的办法。至于说使用ECS类云主机的必须自己手动的来添加了,但是,添加之前一定要搞清楚自己的ECS主机使用的默认防火墙是什么以及如何使用等等问题,明月建议是使用Linux默认的iptables作为你服务器的默认防火墙,因为iptables实在是太强大了,好处很多。但这些需要你具备一定的Linux命令行操作的基本知识的,当然大家也可以借助“百度、谷歌”来搜索到众多的相关教程,虽然这些看似很复杂,但是要记得“一次折腾、受用终生”哦。
因为各个 CDN 服务商的IP节点都不相同,为了方便大家导入到防火墙“白名单”,明月就将自己长久以来收集整理的各个主流 CDN 服务商的 CDN 节点导入sh脚本文件分享给大家,这些节点IP都是官方公开的保证安全有效的,当然,官方后续的更新大家可以咨询各个 CDN 服务商的在线客服获取后用文本编辑软件替换就可以了。
下载请至:https://blog.ymanz.com/wp/5863.html
大家可以根据自己使用的 CDN 来选择对应的.sh文件的,文件名我都是用的拼音,自己判断选择吧。.sh下载后可以通过FTP上传到网站根目录里,在Linux控制终端里通过命令:sh xxxxx.sh 来运行导入的。具体使用方法,我就不多做赘述了,大家自己百度学习吧。
本教程对于HTTPS的 CDN 加速同样是适用的,明月自己就一直是这样来部署 CDN 使用的,都是经过实践的哦!重点和难点其实就是Linux控制台终端上的命令行操作了以及iptables的规则保存、修改、启用这些,这些网上太多相关教程了,大家自行百度“脑补”吧。ECS主机一般都是用CentOS作为主要操作系统的,大家可以参考【CentOS 7.0关闭默认防火墙启用iptables防火墙】一文里的方法来启用iptables防火墙。我能帮你的也就这些了,具体的大家多“百度或者谷歌”一下吧。
wordpress 百度云加速,wordpress百度云插件,百度云加速 cloudflare
作者:整理来源:搜狗问问,时间:2023-04-10 12:32,浏览:67