无有他奇,只是恰好。无有他异,只是本然

使用Redis来加速WordPress

技术文档 26162浏览 0评论
文章目录[隐藏]

1、安装 Redis

官方网站:http://redis.io/download

# cd /usr/local/src
# wget http://redis.googlecode.com/files/redis-2.6.7.tar.gz
# tar xzf redis-2.6.7.tar.gz
# cd redis-2.6.7
# make

安装完成后,启动Redis

#/usr/local/src/redis-2.6.7/src/redis-server

也可以将Redis加入开机自启动

#vi /etc/rc.d/rc.local

加入

/usr/local/src/redis-2.6.7/src/redis-server

2、使用 Predis 作为 Redis 的 PHP 客户端

你需要一个客户端开发包以便 PHP 可以连接到 Redis 服务上。这里我们推荐 [Predis(https://github.com/nrk/predis/),上传 predis.php 到 WordPress 的根目录。

注意:Predis需要PHP的版本>5.3。

问题:在系统的PHP版本升级到5.3.X以上时,会出现WordPress的主题不能显示和编辑的情况,这主要是由于PHP中禁用了部分存在危险的PHP函数,与上述情况相关的函数是scandir

解决方案:

1、编辑PHP配置文件:

vi /usr/local/php/etc/php.ini

寻找disable_functions字符串,将后面的scandir删除

2、重启PHP生效

/etc/init.d/php-fpm restart

3、前端缓存的 PHP 脚本

1.在 WordPress的根目录创建新文件 index-with-redis.php,下载地址

2.修改文件中的变量进行自定义

3.如果使用Apache,需在 .htaccess 中将所有出现 index.php 的地方改为 index-with-redis.php ;如果使用的是 Nginx,则将WordPress中的index.php重命名,并将index-with-redis.php 重命名为index.php。需要注意的是在每次升级后需要重新进行上述操作。

同时,需要在 Nginx 配置文件中单独对 /wp-admin/ 指定一下 index.php 文件. 类似如下:

location /wp-admin {
    index  index.php;
}

参考文献:

  1. http://dbanotes.net/sitelog/movable-type-2-wordpress.html

  2. How to load WordPress in a few milliseconds using Redis

  3. Redis几个认识误区

转载请注明:自由的风 » 使用Redis来加速WordPress

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

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

网友最新评论 (9)

  1. 这个如何才能知道起效了?

    zwwooooo2013-01-15 22:36 回复
    • 一方面页面上会有提示,另外一个我个人的感觉是加载速度明显快了,服务器的负载呈数量级下降。
      之前用memcached加缓存插件的话,执行uptime基本在二点几以上,目前基本都在零点二左右。

      自由的风2013-01-18 15:47 回复
  2. index-with-redis.php 下载地址失效了。

    jpuyy2013-10-05 10:29 回复
  3. Server started, Redis version 2.6.7
    [21651] 19 Feb 01:07:00.442 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add ‘vm.overcommit_memory = 1’ to /etc/sysctl.conf and then reboot or run the command ‘sysctl vm.overcommit_memory=1’ for this to take effect.
    [21651] 19 Feb 01:07:00.442 * The server is now ready to accept connections on port 6379

    好像我的停在这里不动了.请问要怎么弄啊

    陈玉龙2014-02-19 01:11 回复
    • 你这个是正常的呀,但是有个告警,你可以看一下。

      自由的风2014-02-23 16:07 回复
  4. 我按照步骤做完了之后,访问网站首页白屏.但是可以进后台.好奇怪…

    陈玉龙2014-02-19 01:49 回复