优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快

WP Rocket是一款非常优秀的WordPress缓存插件,但对于Nginx站点来说,除了插件相关配置之外,还可以通过Rocket-Nginx获得更佳性能,大约可提速30%。注意:此方法不适用与Apache,因为插件会自动生成.htaccess相关规则。

本文介绍的方法出自于项目 Rocket-Nginx,创建于Maxime Jobin,现在由SatelliteWP进行维护,且获得 WP Rocket 的官方推荐,开源地址:https://github.com/SatelliteWP/rocket-nginx。

本站页面实时加载速度

优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图1
网页加载速度显示

页面加载时间: 正在计算… 毫秒

实现原理

我们知道 WordPress 有个进程专门用来在指定的时间周期或者将来的某个时间点运行特定的计划任务,比如定时发布日志等。这个功能 WordPress 就是通过 WP-Cron 来实现的,它会在网站每次有人访问或者在后台工作的时候,都会重复检查当前是否有任务要执行,这样会引起如下问题:

  1. 增加服务器加载时间,特别是网站访问用户特别多的时候;
  2. 当网站的访问用户很少或者加载了静态缓存插件,指定的任务可能又不运行。

另外,Rocket-Nginx是WP Rocket插件的一个Nginx配置,它使Nginx能够直接访问先前缓存的文件,而无需调用WordPress或任何PHP程序。它还为CSS、JS 和媒体文件添加缓存标头,利用浏览器的缓存来减少对 Web 服务器的请求。

正因为通过Nginx直接调用缓存,不再通过PHP程序,所以原来的计划任务(自动清除到期缓存等)可能会不起作用。因为WP-Cron不是真正的 Cron 计划任务,只有在站点被访问时才会执行,基于这个情况,建议阻止 WordPress 在后台执行 WP-Cron,而是使用服务器的真正的定时 Cron 功能来执行。

第一步、禁用 WordPress cron,请将以下代码添加到wp-config.php:

define( 'DISABLE_WP_CRON', true );

第二步、每 15 分钟手动执行一次 cron 计划任务(对于大多数网站来说应该足够了):

*/15 * * * * wget -q -O - https://www.website.com/wp-cron.php?doing_wp_cron &>/dev/null

或者:

*/15 * * * * curl https://www.website.com/wp-cron.php?doing_wp_cron &>/dev/null

或者:

*/15 * * * * cd /home/user/public_html; php wp-cron.php &>/dev/null

备注:请替换https://www.website.com/为使用网站的网址。

如果使用的是宝塔面板,则可以如下图:

优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图3

安装 Rocket-Nginx – WP Rocket的Nginx配置

同一服务器内所有使用 WP Rocket 的 WordPress 网站只需要安装一次 Rocket-Nginx 实例。下面依然以宝塔的LNMP环境为例,先查看 nginx.conf 的具体位置再执行以下安装指令:

安装指令

Nginx 配置 (nginx.conf) 默认情况下位于/www/server/nginx/conf

cd /www/server/nginx/conf
git clone https://github.com/satellitewp/rocket-nginx.git

或者:

如果您使用的是 Ubuntu,您的 Nginx 配置 (nginx.conf) 应位于:/etc/nginx/

cd /etc/nginx
git clone https://github.com/satellitewp/rocket-nginx.git

如果执行错误,可能是因为国内服务器无法访问 github.com 造成的,解决方法如:

您需要付费解锁才能查看当前内容

优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图4白银免费
优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图5黄金免费
优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图6铂金免费
已付费?登录刷新

以上设置完成后,需重载 Nginx 配置。

service nginx reload

提示:最后要刷新所有包括(浏览器)缓存后,方可检测加速效果。

检测Rocket Nginx配置是否生效

打开rocket-nginx文件夹下的rocket-nginx.ini文件,将其中的debug = false改为debug = true,如图所示

优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图8

注意:每次修改设置rocket-nginx.ini文件,都需要重新运行解析器来重新生成Nginx配置文件。

php rocket-parser.php

将网站的缓存清理掉,重新打开自己的站点测试一下,然后用谷歌浏览器看网页的标头

优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图10

如有不懂之处,可以在下方评论区与我互动哦~

插件下载

优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图12

WP Rocket 汉化版【V3.16】¥10.00

优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图4白银免费
优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图5黄金免费
优化指南丨如何使用Rocket-Nginx让WP Rocket速度更快插图6铂金免费
已付费?登录刷新

本文来自【年年有鱼铂金】的投稿,部分内容可能来源于互联网,不代表【最省事】的观点和立场。侵权投诉>>

本文著作权归博主所有,并授权【最省事】独家使用,未经博主授权,请勿转载。授权申请>>

(27)
上一篇 2022年1月13日 20:05
下一篇 2022年3月26日 13:21

相关推荐

发表回复

登录后才能评论