越来越多的博客网站开始用到了国内的免费CDN了,比如百度云加速、360网站卫士、加速乐及云盾等等。之前我也写文章分享过国内低配置VPS的优化方案,其中提到了很多站长开启CDN加速后反而更慢的问题。

文章是这样描述的:

动态网页会越用越慢

很纳闷吧?但事实的确是这样!我们先要弄清楚这些CDN加速的原理:当用户请求我们网页时,请求会发到CDN节点上,如果是动态数据,那么CDN节点将回源站拉数据,返回给用户!也就是说数据是经过了多次转发,加上CDN节点和源站的延迟,肯定是效果不明显,而且更慢!

这就不难解释,总是有人抱怨百度云加速越用越慢,而有人却说很快了。区别就是,快的人开启了云加速的整站缓存,而慢的人只是弄了一个CDN代理转发而已。

没错,如果只是开启CDN,而不合理的设置缓存,就会越用越慢。

下面我就分享2种CDN下的配置方案。

一、动静均缓存

这也是张戈博客之前用到的方案,网站前台不管是静态还是动态,我统统缓存到CDN。那速度绝对可以飞起来。

老版百度云加速以及360网站卫士等,都可以非常简单的搞定这个事情,因为只需要直接勾上需要缓存的类型,比如一般都是让你勾选【html】 、【目录】、【首页】这3种类型,全部选上就可以了。

这里插播2条实用技巧:

①、缓存黑名单

全部选上后,整个网站不管前后台都会缓存,连后台都缓存了,那还怎么玩?所以,这些CDN肯定还会支持缓存黑名单,大部分是路径匹配的,比如360网站卫士就可以如下设置不缓存后台:

一般都是支持通配的,如果连通配都不支持,那也没必要使用了。

②、目录不缓存?

不知道有没有朋友遇到勾选了目录缓存之后,你的Wordpress网站的分类和单页面依然不会缓存,这是为什么?

其实问题在于WordPress的目录和单页面地址默认是不以斜杠/结尾的,不是一个标准的目录形式。而绝大部分CDN定义的目录是以斜杠结尾的!

有2个方法来解决这个问题:

如果CDN存在缓存白名单,那么可以设置强制缓存(略麻烦)

让WordPress的分类目录和单页面以斜杠结尾即可==>详细教程

那么,问题来了。新版百度云加速已经取消了这种简单的勾选配置!很多朋友解析到云加速后就放一边了,结果速度依然蜗牛,没有感受到飞的快感。

其实,新版百度云加速需要自己自定义规则来开启缓存!下面简单分享下WordPress在百度云加速下开启高速缓存的自定义规则,如图点击可进入设置:

同样的,根据前面的黑白名单规则,我们先定个调,一般网站应该是这样的情况:前台都缓存、后台不缓存、个别页面要缓存或不缓存。

先看下百度云加速自定义规则的说明:

提示说明: 规则自定义指对“指定URL”进行页面级规则定制(支持通配符*)。可对任意子域名、目录、甚至单个URL进行针对性的加速缓存、安全防护等配置。列表中上下关系决定优先级,靠上规则优先级高。站长可以通过点击“↑”调整优先级。新增规则优先级最低,将于30s内生效。

URL指定支持通配符*,例如

1) 对img.yoursite.com进行特定设置,需增加URL: img.yoursite.com/*

2) 对www.yoursite.com/news/ 进行特定设置,需增加URL: www.yoursite.com/news/*

3) 对www.yoursite.com所有html页面进行特定设置,需增加URL: www.yoursite.com/*.html

支持通配,这就简单了!不过免费版只支持3条规则,这个就需要我们合理斟酌一下了。

优先级从上往下依次降低,所以我们要保证不缓存的规则写到最上面,才能不会缓存规则覆盖。

根据我个人经验,一般WordPress网站设置如下3条规则即可:

①、网站后台:zhang.ge/wp-admin/*   设置为不缓存或细致缓存

②、评论分页:zhang.ge/*/comment-page-*    设置为不缓存或细致缓存

③、网站前台:*zhang.ge*    设置为前后通配都缓存

Ps:细致缓存其实就是只缓存静态文件,其中缓存时间或有效期请自行设定即可,无需按图照办。另外由于新版百度云加速现在不能对单个域名设置了,所以最后的缓存规则是前后通配,保证某些网站的二级静态域名也缓存到位。另外,这只是我个人经验推荐的配置,比如评论分页就可以根据自己的需要设置为其他页面,此处分享仅供参考!

这样设置好了之后,网站前台刷几下就可以看到效果了,当然还可以F12到network里面去看header的缓存命中情况,这就不赘述了。

二、只缓存静态

动静都缓存可以解决国内低配VPS的2个尴尬:带宽和负载。带宽问题,国内普遍小水管就不用我多说了吧。负载问题则是WordPress一直以来的诟病,刷新快一点,CPU就满了。

但是,有一些网站,本地已有缓存或者访问流量并不高,他们不想开启全静态缓存,因为会带来的各种数据不刷新问题。因此,我们如何既解决速度问题,又兼顾实时数据呢?

当然,开启CDN不进行整站缓存设置的话,大部分CDN会默认缓存静态文件,基本满足以上需求。但是某些CDN有个坑爹的规则:他会和谐某些关键词,访问有这些关键词的页面就提示违规并不显示。

如何解决这个问题?很简单,通过域名做动静分离即可。

将静态链接替换为二级域名,并开启CDN缓存。主域名则不走CDN或走CDN但不开启缓存。

将静态链接替换为二级域名应该不用我多说了吧?不会的看一下张戈博客之前分享的七牛CDN代码版即可==>传送门

主域名不走CDN也很简单,直接在解析时不开启缓存即可,也就是直接回源:

如果担心暴露IP,如果是阿里云ECS,你还可以CNAME到阿里云的WAF上(这也是张戈博客目前的做法):

走CDN开启缓存和走CDN禁止缓存应该也不用我多说了,上文都有分享规则。

如上设置后,你的网站的速度也会很快,当然前提是你的动态部分不卡才行。如果网站还是比较卡,但是你有不想开启纯静态导致数据不刷新,那么

①、如果是独立主机,可以考虑开启redis或opcache等php动态缓存

②、如果是虚拟主机,可以安装 DB Cache Reloaded Fix这类数据缓存插件

当然,如果你觉得还是不够快,那么推荐和张戈博客一样,开启Nginx的fastcgi缓存!

三、总结下区别

方案一 和 方案二 到底有什么区别呢?

方案一 是将动态和静态都强制缓存到CDN,这样就算本地不开启任何缓存,用户的访问速度也是杠杠的。如果想要给搜索引擎蜘蛛一样的速度,那么本地最好也开启一下静态缓存。

方案二 则是只缓存静态数据,动态数据依然请求到源服务器。这样做的好处是既解决了带宽尴尬,又解决了前台数据不能实时刷新的问题。因为,占带宽的主要是静态文件,而非html代码。我们将大体积的静态文件托管到CDN加速,源服务器就只要负担体积很小的html代码流量了,速度自然就快了!

当然,这样做很容易就出现了前文提到的开启CDN反问变慢的尴尬。。。解决办法也很简单,本地开启一下动态缓存即可。

张戈在帮不少站长做网站优化时,设置过百度云加速,发现大部分站长都不会设置,然后还对我说为啥你弄过之后就飞起来了,我当初使用云加速就卡出翔?其实就是不会设置而已!所以,今天我分享出来,弱弱的为CDN正名,那些用过之后骂CDN垃圾越用越慢的人,先自己好好反省一下吧!

好了,本文罗里吧嗦说了一大堆,有需求的自然会豁然开朗,没需求的就会如同嚼蜡了。我敢说,如果你看懂了这些设置技巧,那么使用任何CDN都会信手拈来,轻松应付!

总之一句话,张戈写文章的期望不高,希望对有需求的人有所帮助就好。

cdn节点人少延迟高_如何正确配置CDN高速缓存,避免越用越慢的尴尬相关推荐

  1. cdn节点人少延迟高_让你刷剧一直爽,CDN原理是什么

    鼠年春节,一个特别的春节.受疫情影响,假期比往年长了一些.这么长时间宅在家中,想必大家除了睡觉,花费时间最多的就是"刷剧"了.今天讲的技术主题就和"刷剧"有关, ...

  2. cdn节点人少延迟高_百度大规模K站、CDN节点更换,让流量更纠结

    最近IT界最热闹的事件之一便是百度的大改革,相信身边不少站长收到牵连,我的博客也或多或少受到了影响. 先不说百度有没有K我的博客,就前一段正值百度K站高峰期,偶尔反查之前所使用的免费CDN提供商Inc ...

  3. cdn节点人少延迟高_CDN节点加速利器,三线大带宽服务器百兆G口哪个更合你心意...

    专业大带宽服务器,联邦在线千兆独享是否可以赢得你的芳心 联邦小娜QQ:17646293 CDN的目的是什么,是为了保证不同地区用户的均速访问 其最主要的就是需要优质的线路,全国零延迟不丢包,才得以留住 ...

  4. wifi卡慢延迟高_家里WiFi特别卡,网络延迟高,可能不是网速的问题

    原标题:家里WiFi特别卡,网络延迟高,可能不是网速的问题 随着科技走向我们的身边,网络的覆盖力度也是越来越大,相信很多人的家中都是有安装WiFi的,然后往往在家中使用的过程中都会碰到这样的情况,明明 ...

  5. 绝地求生米拉马延迟高_知道无限的人:编码拉马努詹的出租车

    绝地求生米拉马延迟高 by Geoffrey Bourne 杰弗里·伯恩(Geoffrey Bourne) 知道无限的人:编码拉马努詹的出租车 (The Man Who Knew Infinity: ...

  6. wifi卡慢延迟高_健康生活好助手:华为智能体脂秤 WiFi 版 体验评测

    点击右上角关注我们,每天给您带来最新最潮的科技资讯,让您足不出户也知道科技圈大事! 为了让自己严格执行减肥计划,一台体脂秤是肯定少不了的,只有时刻记住那个沉重的数字,管住嘴.迈开腿才会有动力. 不过随 ...

  7. wifi卡慢延迟高_卡顿缓冲真头疼 这几招能加速你的WiFi

    WiFi网速不佳是个令人头疼的问题,在看视频.打游戏时遭遇频繁的卡顿,甚至会发展成家庭矛盾.有些用户常常问,为什么我家中已经是50M甚至100M的宽带了,使用WiFi上网还是会卡顿.甚至在更换了一台新 ...

  8. wifi卡慢延迟高_家里WIFI越用越卡?教你3个小方法,彻底解决网速慢、卡顿等问题...

    相信各位小伙伴都遇到过家里Wi-Fi网络频繁卡顿的现象,当遇到这种情况是大多数人的第一反应就是"有其他人在蹭家里的Wi-Fi",为此便会将自家的Wi-Fi密码改成长串数字+复杂字母 ...

  9. wifi卡慢延迟高_家中无线突然很慢/卡顿怎么办?路由器增强WiFi信号的几种方法...

    大家平时在家上网时,可能经常会遇到无线网络突然变慢或卡顿的情况,尤其当你正在玩游戏或看视频时,绝对是一件非常令人抓狂的事情,那么有哪些方法可以让网络重新"起飞"呢?今天笔者就为大家 ...

最新文章

  1. python中修改列表元素的2种方法
  2. 数据分析:主成分分析(PCA)1
  3. 深入理解GCD之dispatch_queue
  4. springboot之数据校验及多环境切换
  5. GCD 代码以及GCD思想
  6. 2021电赛预测—手把手带你玩转DDS模块AD9833
  7. 百度初级认证知识点小记
  8. 新建数据库监听端口被占用
  9. iOS——应用内调用Face ID、Touch ID
  10. Yahoo 无插件网页媒体播放器
  11. 【NLP】千呼万唤始出来——GPT-3终于开源!
  12. 超级通俗易懂的自然连接
  13. 多线阵列激光三维扫描系统及多线阵列激光三维扫描方法
  14. Bootstrap的工具提示(Tooltip)
  15. 【Emmet 的使用手册(知识点超全版本)】
  16. Java 集合深入理解(10):Deque 双端队列
  17. fedora php mysql_Fedora 8下用Yum安装Apache+PHP+MySQL环境
  18. Python-错误与异常处理
  19. 7. Jackson用树模型处理JSON是必备技能,不信你看
  20. selenium chrome 浏览器闪退

热门文章

  1. JavaSE——常用类库(String类)
  2. python在windows系统中安装pandas,numpy
  3. React基础语法学习
  4. Volley学习总结
  5. 剑指 Offer 06. 从尾到头打印链表(递归、逆置链表、头部动态插入)
  6. 用法 stl_C++STL 容器篇
  7. omv检查硬盘坏道_坏道检测与修复
  8. java中哪些可以私有化_《Java基础学习笔记》JAVA修饰符之私有化(Private)
  9. java 双重检查锁 有序_Java中的双重检查锁(double checked locking)
  10. 奇妙的安全旅行之DSA算法