新升级后的EI Capitan,发现PHP也给升级了,原本的redis扩展对应需要重新配置,下面介绍我在配置过程中出现过的一些问题。
我之前使用brew
自己安装了5.5.25
这个版本,个人手动安装的php
命令会有软连接默认链接到路径/usr/local/bin
下,切换到这个目录以后可以看到该目录下的phpize
、php
等命令都是软链接。而升级EI Capitan后,系统默认安装的PHP版本是5.5.34
这个版本,最新系统升级后,自带apache也会默认使用这个版本的php。
安装新的redis扩展
在安装之前,我遇到了两个问题,详情和解决办法请看图
第一个问题的问题描述:执行 phpize 提示如下错误
Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable.
解决办法
使用brew
安装autoconf
brew install autoconf
如果没有安装brew
,请安装Homebrew
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
再如果没有ruby
,请自行解决。
第二个问题:执行make install
时候出现如下问题
[cp: /usr/lib/php/extensions/no-debug-non-zts-20121212/#INST@17000#: Operation not permitted]
解决办法如下图
OK,问题都解决完了。
正常没有问题的安装流程如下
- https://github.com/owlient/phpredis/tarball/master 下载
- 如果是gzip包,
tar -zxvf owlient-phpredis-2.1.1-1-g90ecd17.tar.gz
解压 - 一定要使用最新的
phpize
和php-config
。
cd到解压后的目录,执行/usr/bin/phpize
,
./configure --with-php-config=/usr/bin/php-config
,
make
make install
这样就会在extension目录生成redis.so
修改php.ini
,添加redis
extension = redis.so
重启apache
生效