WordPress 快取方式大致上可以分為 4 種:Cache Types / Run-time Cache / Object Caching / Page Cache
詳細的說明可以參考 2013 年 WordCamp 上的一篇演講稿:
Core Caching Concepts in WordPress

而這一篇是在 EasyEngine 論壇上,討論 EE 該不該將 WP Rocket 加入支援,所另外延伸出來的討論。
內容目錄:
WordPress Cache
一般 WordPress 的快取外掛,如 WP Rocket / W3 Total Cache / WP Super Cache / Cache Enabler 都是屬於 Page Cache,使用 advance-cache.php 方式在 / wp-content / cache / 產生靜態頁面,所以都會要求 wp-config.php 文件內,加入:
define('WP_CACHE', true);
在 EasyEngine 使用的 –wpredis 快取方式,其實是啟用 Nginx 模組的 redis 支持全頁快取,詳細說明:EasyEngine 3.3 released with Full-Page Redis Cache support
wpredis 指令,會抓取資料表中的 wp_options 來當快取頁,當一台 VPS 中有很多網站,資料表的前置名稱 (wp_),就很重要了,如果你的資料庫的前置名稱都使用 wp_,這時的 redis 只會抓到第一個資料庫的內容,你會發現不管開啟哪一個網站,內容都是一樣的。
另一個作法是在 wp-config.php 文件內,define(‘WP_DEBUG’, false); 下一行加入
define( 'WP_CACHE_KEY_SALT', 'domain.com:' );
將 domain.com 更改為你的網站域名。
本網站 ( yungke.me ) 是使用 Nginx + Redis 快取模式,可以與快取緩存外掛比較看看,不會差太多。
2017/12/12 更改為:
前端使用 FastCgi Cache 做 Page Cache,後端使用 Redis 做 Object Cache 資料庫快取,讓主機的負載更低。
2022/7/9 更新:
快取的技術更新的分常快,HelloYungke 部落格現在的快取方式,已更改為 Cloudflare Enterprise Edge 直接在邊緣伺服器生成靜態頁面,已不須再安裝快取外掛。
Featured Photo by Andy Hermawan on Unsplash
請問一下Y大
如果已經用了 Redis 快取模式
那前台還需要裝快取外掛 如 WP-SUPER Cache之類的嗎?
如果主機端已經用了 Redis 快取模式 (allkeys-lru)。
前端就不需要裝任何的快取外掛了。
但是要安裝 Redis Object Cache 和 Nginx Helper 外掛,你才能在 WP 後台清除快取。
也可以安裝 Async JavaScript 和 Autoptimize 來優化 CSS & JS。
原來如此!再來試試看