关注互联网应用及运维技术的个人博客

wordpress正确配置rocket-nginx

介绍

它使Nginx可以提供缓存过的文件,不会调用WordPress或PHP。它还会添加标题以缓存CSS,JS和媒体,以通过减少对Web服务器的请求来利用浏览器的缓存。

  • 简单说就是NGINX→PHP-FPM→PHP→静态文件 变成了 NGINX→静态文件(通过直接提供静态页面而不加载WordPress或PHP,可以使WP-Rocket更快。)

禁止WP定时任务

wp-config这个文件里添加一行代码,作用是为了禁止WP自带的CRON定时任务

define('DISABLE_WP_CRON', true);

添加新的定时任务

以下三种定时任务代码任一个就行,记得将website换成自己的网址

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

or

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

or

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

 Shell复制代码

  • 在SSH添加定时任务,先去了解Crontab知识

拉取rocket-nginx到nginx目录

  • 在SSH里面进入到nginx的目录,以宝塔为例(/www/server/nginx)cd /www/server/nginx
  • 拉取代码 git clone https://github.com/satellitewp/rocket-nginx.git
  • 从2.0版开始,必须生成配置。要生成默认配置,必须重命名禁用的ini文件并运行配置解析器:cd rocket-nginx cp rocket-nginx.ini.disabled rocket-nginx.ini php rocket-parser.php Shell复制代码
  • 运行之后就会在rocket-nginx目录生成一个default.conf文件,是根据rocket-nginx.ini对应解析的,所以可以看看相应配置

在nginx配置文档导入

  • 在对应网站的nginx配置文档中server部分导入server { ... # Rocket-Nginx configuration include /www/server/nginx/rocket-nginx/default.conf; ... } Nginx复制代码
  • 配置完要先测试是否配置可行 nginx -t
  • 配置可行记得重启nginx service nginx reload

测试是否生效

  • rocket-nginx.ini 文件中将debug设置成true,这样就可以看到在请求的header里面有X-Rocket-Nginx开头的内容X-Rocket-Nginx-Serving-Static:配置是否直接提供了缓存文件(是否绕过WordPress):是或否 X-Rocket-Nginx-Reason:注明了为什么启用的原因,如果启用成功返回路径,失败返回原因 X-Rocket-Nginx-File:不管是否启用成功,这里展示一下代理的路径,方便拍错 Http复制代码

注意

  • 提示:每次更改了rocket-nginx.ini就要利用php rocket-parser.php 命令解析
  • 记得关闭wp-rocket插件中的对移动端单独缓存功能,(除非你的主题开发了两端)我想现在的主题都是响应式的不存在这个问题
  • 如果站点是https并且在header中显示如下内容,即结尾一直是/index.html,那就说明可能是你的nginx配置文件的问题,需要从自己的文档下手X-Rocket-Nginx-Serving-Static:NO X-Rocket-Nginx-File:... /index.html Http复制代码
  • 正确的路径结尾应该是 index-https.html_gzip,这是https站点的情况

效果

在没有做nginx优化时,即使用了wp-rocket插件也是两个B,现在明显有变化,因为本主题是图文式的,如果你的主题不怎么用图片,那么效果会更为显著。

赞(1)
未经允许不得转载:飞天狒狒 » wordpress正确配置rocket-nginx

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址