开发者社区> 问答> 正文

wordpress在centos7.2上 安装php7+Redis缓存加速

ydjy2009 2017-01-04 13:03:57 6350
服务器环境为:阿里云centos7.2 x64公共镜像,lnmp环境,php5.5.7运行两个discuz,php7.0运行了两个wordpress,默认已安装OPcache加速,现在此基础上,安装Redis缓存插件。


为了后期更好地维护,全部采用源码编译安装,过程如下:


一、PHP7安装redis
cd /alidata/server/
wget http://download.redis.io/releases/redis-3.2.3.tar.gz
tar -zxvf redis-3.2.3.tar.gz
mv redis-3.2.3 redis
cd redis
make
make install
cd utils
./install_server.sh



一直回车直到完成,如下图:


通过上图,我们可以看出


redis初始化后redis配置文件为/etc/redis/6379.conf


日志文件 为/var/log/redis_6379.log


数据文件dump.rdb存放到/var/lib/redis/6379目录下


启动脚本 为/etc/init.d/redis_6379


现在我们要使用 systemd,所以在 /etc/systemd/system 下创建一个单位文件名字为 redis_6379.service


vi /etc/systemd/system/redis_6379.service
填写下面的内容:
[Unit]
Description=Redis on port 6379
[Service]
Type=forking
ExecStart=/etc/init.d/redis_6379 start
ExecStop=/etc/init.d/redis_6379 stop
[Install]
WantedBy=multi-user.target



现在来查看redis版本


redis-cli --version
现在启动可以用


service redis_6379 start
停止


service redis_6379 stop
考虑到安全性,我们需要启用redis的密码验证功能requirepass参数


vi /etc/redis/6379.conf
按/输入requirepass定位到相应行,将后面的文本改为自己的密码
二、安装php7 redis扩展:
下载phpredis-php7.zip,本站下载:php7
上传到/alidata/server/php7/,执行:


unzip phpredis-php7.zip
cd phpredis-php7
/alidata/server/php7/bin/phpize
./configure --with-php-config=/alidata/server/php7/bin/php-config
make
make install



三、修改php.ini文件


vi /alidata/server/php7/etc/php.ini
按大写的G跳到结尾,加入:
extension_dir = "/alidata/server/php7/lib/php/extensions/no-debug-non-zts-20151012/"
extension=redis.so





授权:


chmod -R www:www /alidata/server/php7
然后就可以重启php7了:service php7-fpm restart


四、wordpress后台安装WP Redis缓存插件
进入后台,插件,搜索WP Redis,安装,非常简单。插件网址:https://wordpress.org/plugins/wp-redis/changelog/




要让插件生效,需要编辑wordpress根目录下的wp-config.php,在结尾添加:


/** wp object cache setting for wp redis */
define('WP_CACHE', true);
$redis_server = array('host' => '127.0.0.1','port' => 6379,'auth' => '你的redis密码',);
/** 设置redis服务器IP、端口以及密码;如果没有填写,则默认IP和port是127.0.0.1:6379 */
define('WP_CACHE_KEY_SALT', 'ydxjyjold');
/** redis服务器的cache key,这样很多个wp可以共用一台redis服务器而互不干扰 */



刷新下,可以看到加速效果非常明显。


以上操作已在阿里云主机了顺利完成,现将过程记录下来分享给大家。特别要注意,php7安装redis扩展时,要下载专门的redis扩展版本,否则无法运行。
我的博客原文:https://www.ydxjyj.cn/2017/01/1185.html
全站启用了https,启用了OPcache等。希望能给大家一些帮助。
缓存 NoSQL PHP Redis 数据安全/隐私保护
分享到
取消 提交回答
全部回答(3)
  • 秋日的私语
    2017-01-04 20:06:59
    源码安装能找到最新的,yum现在最新才2.8太老了,nginx yum还是有严重漏洞的1.44版本。能编译尽量编译

    -------------------------

    感觉PHP7运行WordPress已非常流畅了,再用redis加速已感觉不到很大差别,php7的WordPress比PHP5的discuz快得多。

    0 0
  • ydjy2009
    2017-01-04 15:45:55
    引用第1楼ivmmff于2017-01-04 13:14发表的  :
    通过 Nginx/apache —— PHP —— php-redis —— Redis

    远没有 Nginx —— Redis 效率高。

    还有就是,编译的方式,Redis 的升级都得考虑,每个更新都要及时升级,会很蛋疼

    NGINX直接读取Redis,是否会出现问题呢?如果宕机是否会将损坏数据库。我现在的环境是前端nginx,后端有tomcat php jdk,数据库为mysql,另外还部署了seafile网盘,vpn等,都是由nginx转发的,是否配置比较麻烦?
    0 0
  • 妙正灰
    2017-01-04 13:14:02
    通过 Nginx/apache —— PHP —— php-redis —— Redis

    远没有 Nginx —— Redis 效率高。

    还有就是,编译的方式,Redis 的升级都得考虑,每个更新都要及时升级,会很蛋疼
    0 0
添加回答
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题
推荐课程