速度,速度,速度,重要的事说三遍。网站的速度直接影响用户体验。据研究,用户比较接受的网站速度是页面加载在3秒内。如果超过这个时间,离开网站的访客会大幅提升。所以对于网站主办方,提高速度是他们追求的终极目标之一。提高WordPress网站的其中一种方法就是使用WordPress缓存。本文我们探讨通过Redis技术加速网站。
在启用WordPress redis加速之前,首先要安装Redis数据库并开启PHP扩展,不同的环境开启方法都不太一样,有些简单有些复杂,大家暂时可以Google或者百度查找相关文档,博主用的是宝塔环境,开启是非常简单的,宝塔4.X直接后台选PHP配置直接安装redis扩展即可,其他系统环境,大家搜索下网络,很多教程,关键字 “系统环境 + 安装redis php扩展”。
扩展开启后的phpinfo应该是会正确显示redis版本。本文不讨论虚拟主机,只讨论云服务器。你可以选择一个干净的linux系统,然后通过root登录,安装bt宝塔系统,为什么推荐这个,因为是免费的。安装之后,你可以php设置。会看到Redis扩展安装。
配置WordPress的redis支持
万事俱备,下面就开始启用WordPress的redis支持吧。
第一,下载predis.php放到你的网站根目录,与index.php同目录,predis.php下载地址:https://pan.baidu.com/s/1kwQQKEJfLN_sl4FPTBqkvQ 提取码: 下方扫码或者微信关注77生活网获取
第二,下载index-with-redis.php 放到你的网站根目录,同上,与predis.php保持一个目录 下载地址:https://pan.baidu.com/s/1luPkt1uUcyRULwZD6RBaJA 提取码:
需要修改的地方:
$cf = 1; // 如果开了cloudflare这里设置为1,否则为0 $debug = 0; // 是否开启底部调试信息,显示执行时间等 $display_powered_by_redis = 1; // 这个是原版文件带的功能,修改版已经取消,以上1位显示powered by redis , 0 关闭。
第三,把原index.php修改为任意文件,比如index-back.php,同时修改index-with-redis.php为index.php,就开启了redis缓存。
第四,如果不想修改index.php,同时保持index-with-redis.php不变,需要修改伪静态规则,以Apache的.htaccess 为例子。修改如下字段:
//原始伪静态规则 RewriteRule . /index.php [L] //修改后的规则 RewriteRule . /index-with-php.php [L]
测试效果
因为要测试效果,这里需要打开debug参数,修改index-with-redis.php(如果修改为index.php则打开index.php)里面的debug参数为0。这里需要注意的是,插件默认在管理员登陆状态下是无法生存缓存和加载缓存的,请退出后台账户,或者开启浏览器隐身模式!
测试效果如上图,以首页为例,管理员账户登陆状态下载入首页时间为0.31 设置cache 以后,再次访问首页时间降至了0.0046,提升惊人!使用redis后加速效果很明显,首页响应提高了5~6倍左右,不过有一个缺点:后台在编辑文章提交的时候速度会变得慢很多,估计是更新文章的时候同步更新redis缓存了。
插件默认在管理员登陆状态下,F5刷新当前页面 或者在 url后面加入参数 ?r=y 可以删除当前页面缓存,在任意参数加入 ?c=y 可以删除全站缓存,前提是登陆状态下,如果您觉得删除不够彻底,可以写一个php放到网站上,每访问一次,即可全部清空redis数据库,代码如下:
<?php //连接本地的 Redis 服务 $redis = new Redis(); $redis->connect('127.0.0.1', 6379); //执行命令清空数据库 $redis->flushall(); ?>