使用CloudFlare的WordPress站点应该用什么缓存?WP Super Cache可以吗?

由于我买的阿里云是在HK,所以把域名用CloudFlare做CDN解析,那么WordPress的WP Super Cache还能用吗?先来从两者的缓存原理上来分析分析。

Cloudflare 是一个全球网络,旨在让您连接到互联网的一切都安全、私密、快速和可靠
Cloudflare 是一个全球网络,旨在让您连接到互联网的一切都安全、私密、快速和可靠

WP Super Cache缓存是什么原理

WP Super Cache是页面缓存(包括Surge)在内,它与Redis Object CacheBatcache不一样,会在wp-content/cache目录生成缓存文件。用户访问是读取硬盘上的文件。

CloudFlare CDN是什么原理

CloudFlare不仅是域名解析,其还有CDN加速的原理。用户访问网站 -> 请求CloudFlare节点,如果节点有缓存的页面即访问;如果节点无缓存的页面则CloudFlare去访问源服务器然后再给用户访问,或者访问资源服务器然后放到节点,用户从节点读取。这样就可以减少请求,利用节点缓存的页面实现CDN加速。

那么其本质上CloudFlare也是页面缓存,只不过WP Super Cache缓存在服务器中,CloudFlare缓存在节点中。

WP Super Cache是不是就不能用了

我们来看看这一片文章:WP Super Cache with Cloudflare,文中提到:

Don’t do it. Use one or the other.
They both do essentially the same thing, caching. You’ll run into problems sooner or later.

这是来自WP Super Cache官方的回答,一目了然,还是别用了。鱼和熊掌怎么兼得,奢侈啊!

那CloudFlare下的WordPress就没有缓存插件了?

当然不是,前面提到页面缓存,那自然还有内存缓存、Object cache等。Redis Object Cache、Batcache就是可以。启用内存缓存、数据库缓存等,只要不是页面缓存的方案,CloudFlare访问网站的时候就是去读的缓存页面来放到节点,这样比无缓存CloudFlare直接读取服务器就好太多了。

发表回复

您的电子邮箱地址不会被公开。