MacOS大版本更新后,很多人会选择重装Homebrew然后顺带安装最新版的包。最近也是不小心执行了brew update,之后发现很多问题。通过检查发现之前安装的php72变成了系统自带的7.1.19,php环境好多之前的扩展都不能用了。
由于项目需要使用redis,没办法只能选择重新安装php扩展。下面开始进入正题:
1、下载php-redis;
地址:https://nodeload.github.com/nicolasff/phpredis/zip/master
2、下载完后进行解压,然后移动到系统自带php的同级目录;①
cp /Users/panxu/Desktop/phpredis /etc
3、进入phpredis;
cd /etc/phpredis
4、动态安装php扩展模块;②
/usr/bin/phpize
5、进行编译;
./configure --with-php-config=/usr/bin/php-config
6、开始安装;
make && make install
安装完成,如果成功,会有如下提示:
Build complete. Don't forget to run 'make test'. Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20160303/
7、找到php.ini文件,并进行编辑;③
vi php.ini
在配置文件最后一行加入:
extension=redis.so
8、重启php-fpm,完成安装。④
①目录这个可根据自身喜好进行调整;
②如果不知道phpize在哪个目录,可通过whereis phpize命令找到;
③如果是系统自带php,php.ini这个文件可能找不到,具体的解决办法可参考《mac的php.ini在哪,mac自带的php环境找不到php.ini配置文件》一文;
④重启php-fpm过程中可能会报错,比如:
NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20160303/redis.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20160303/redis.so, 0x0009): dlopen(): file not found: /usr/lib/php/extensions/no-debug-non-zts-20160303/redis.so in Unknown on line 0
解决办法是,找到redis.so文件的位置(可通过命令"whereis redis.so"),然后执行:
sudo cp redis.so /usr/lib/php/extensions/no-debug-non-zts-20160303/
然后我们进入到该目录就可查看到redis.so文件。
好了,以上就是“mac自带php安装redis扩展”的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流。
网友评论 ( 0 条评论 )