Typecho博客系统专用的CloudFlare Cache Rules缓存规则

图片[1]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

规则介绍

这套CloudFlare缓存规则带来的好处就是可以大大的缓解服务器压力,将几乎所有的静态资源都缓存在CloudFlare节点IP上,全球各地的访客都可以就近请求CloudFlare节点IP来浏览网站,由此达到网站载入速度的极致优化

一共是三条缓存规则,缺一不可,并且三条规则是要严格按照顺序排列生效才可以,三条规则主要实现的是:

  1. 不缓存指定的目录(如后台、搜索查询等等)。
  2. 登录状态以及发表过评论的不缓存。
  3. 只要不是登录状态或者发表过评论的请求一律缓存。

首先在Cloudflare后台找到缓存→Cache Rules→创建规则

第一条(可以起名“不缓存”)

具体规则配置如下图所示:

图片[2]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

表达式为:

(starts_with(http.request.full_uri, "https://www.mezhiyu.com/admin/")) or (starts_with(http.request.full_uri, "https://www.mezhiyu.com/search/"))

符合上述条件的一律绕过缓存回源请求

第二条规则(可以起名为“登录评论不缓存”)

具体规则配置如下图所示:

图片[3]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

表达式为:

(starts_with(http.request.full_uri, "https://www.mezhiyu.com/") and http.cookie contains "__typecho_authCode" and http.cookie contains "__typecho_uid") or (starts_with(http.request.full_uri, "https://www.mezhiyu.com/") and http.cookie contains "__typecho_remember_")

符合上述条件的一律绕过缓存回源请求,所以如下图配置:

图片[4]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

保存即可。

这条规则其实就是通过当前Typecho站点的cookie来判断是登录状态还是发表过评论状态,一般来说这都是Typecho站点的标准,所以适用大多数的Typecho主题,如果你的Typecho主题是多用户模式的话,那可能就得根据需要来修改这条规则了,一般通过浏览器“开发者工具”调试就能获得具体的cookie,只能大家自己搞定了。

第三条规则(可以起名为“全站缓存”)

图片[5]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

表达式为:

(starts_with(http.request.full_uri, "https://www.mezhiyu.com/") and not http.cookie contains "__typecho_authCode" and not http.cookie contains "__typecho_uid" and not http.cookie contains "__typecho_remember_") or (starts_with(http.request.full_uri, "https://www.mezhiyu.com/usr/uploads"))

这个规则跟第二条规则正好相反,凡不是登录状态或者留过言状态的请求一律缓存当前所有资源,评论留言要排除的原因就是否则会造成评论信息混乱,比如:A客户的留言信息被B客户看到并能直接发表评论。

因为第三条规则是缓存所有,所以下面的缓存配置就要配置一下了,不能是【绕过缓存了】,具体配置如下图所示:

图片[6]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

CloudFlare里这个边缘TTL缓存指的就是CloudFlare节点IP上的缓存,所以这里配置的意思就是在节点IP上保留缓存资源7天的时间,除非你发布的文章需要经常修改变更,否则这个边缘TTL时间越长缓存命中率就越高,自然访客的访问速度就会一直保持非常快的体验。

图片[7]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

这个浏览器TTL指的是在客户浏览器里保留缓存多久,一般这里的时间是一定要短于边缘TTL时间的,因为边缘TTL缓存我们可以通过CloudFlare后台清除缓存来情理掉,而这个浏览器TTL缓存是在客户电脑上的,我们是不可能清理的,所以最好的办法就是让其缓存时间短一些,超过这个时间就到边缘TTL上请求更新一下,最科学。

图片[8]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

剩下的就是有关缓存的细节配置了,就不一一介绍了,大家参照上图勾选就是了,最后保存规则即可。

图片[9]-Typecho博客系统专用的CloudFlare Cache Rules缓存规则-知遇博客

三条规则保存后,最后一步还要确认一下规则顺序如上图所示,否则规则生效就会出错哦,按照这个顺序就可以让CloudFlare来智能自动的缓存网站资源了,随着访客数量的增加,CloudFlare后台【分析日志】——【流量】里大家就可以看到缓存命中情况了。

别忘了把以上规则里的www.mezhiyu.com改成你自己博客的站点域名哦

 

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容