FastCGI Cache 是 NGINX 中的一项强大功能,用于存储 PHP 脚本生成的动态内容,访客访问时,无需经过php二次处理,直接返回缓存内容。对于 WordPress 而言,这意味着更快的页面加载时间和更少的服务器负载,是WordPress优化中的利器。关于该缓存的启用方法老白之前已经写过“WordPress前端优化之Nginx fastcgi_cache缓存”,本文主要说说支持nginx fastcgi缓存清除的三大WordPress插件优劣对比: Nginx Helper、Nginx Cache和FastCGI Cache Purge and Preload for Nginx。
[h1]1. Nginx Helper[/h1]
插件主页:https://cn.wordpress.org/plugins/nginx-helper/
[h2]1.1 功能说明[/h2]
支持缓存按条件清除,如评论发布,文章发布,文章更新。
缺点:不支持预加载全站
如果你使用宝塔面板,则可搭配脚本来实现该功能
宝塔面板shell脚本访问WordPress站点地图实现全站预缓存
[h1]2. Nginx Cache[/h1]
插件主页:https://cn.wordpress.org/plugins/nginx-cache/
[h2]2.1 功能说明[/h2]
当内容更改时,自动清除 Nginx 缓存 (FastCGI, Proxy, uWSGI) 或在 WordPress 中手动清除。
缺点:不支持预加载、不支持缓存按条件清除,就是删除所有缓存文件
[h1]3. FastCGI Cache Purge and Preload for Nginx[/h1]
插件主页:https://cn.wordpress.org/plugins/fastcgi-cache-purge-and-preload-nginx/
[h2]3.1 功能说明[/h2]
- 清除所有 Nginx 缓存: 完全清除 Nginx 存储的所有缓存数据。
- 预加载所有Nginx缓存: 用整个网站的最新数据填充 Nginx 缓存。
- 自动预加载 Nginx 缓存: 清除后自动预加载缓存,通过主动缓存内容确保快速页面加载时间。为单个 POST/PAGE 启用自动清除或使用全部清除缓存操作时,会触发此功能。
- 自动清除 Nginx 缓存: 在更新 POST/PAGE、批准新评论或更改评论状态时,自动清除该 POST/PAGE 的缓存版本。
- 通过 WP Cron 安排缓存清除和预加载:使用 WordPress Cron 作业自动执行清除和预加载过程。
- 通过 REST API 远程Nginx 缓存清除和预加载: 通过 REST API 端点远程触发缓存清除和预加载。
- 手动Nginx 缓存清除和预加载: 允许通过高级选项卡中的表格视图手动清除和预加载缓存。
- 页面上的Nginx 缓存清除和预加载: 直接从前台手动清除和预加载当前访问页面的 Nginx 缓存。
- 优化的Nginx 缓存预加载: 通过限制 CPU 占用、排除端点、等待检索和速率限制等选项,提高 Nginx 缓存预加载性能。
- 监控插件和 Nginx 缓存状态: 监控插件状态、缓存
[error title="老白亲测"]功能非常强大,但是设置过程极其复杂,且与宝塔不符[/error]
安装教程参考:https://github.com/psaux-it/nginx-fastcgi-cache-purge-and-preload
[h1]4. 总结[/h1]
nginx fstcgi缓存确实非常好,但不是主流,用户相对memcached或redis少很多。
因此和该缓存相关的插件以及功能介绍较少,发展慢,不建议小白使用。
关于缓存老白写了很多,可看博客其他推文。
本文作者为test,转载请注明。