记得自己的redis扩展是安装了的,安装在mamp环境下的这个目录/Applications/MAMP/bin/php/php5.6.30/lib/php/extensions/no-debug-non-zts-20131226/redis.so
并且在浏览器运行这个代码也是测试成功的
那么如何一步一步排查呢?
后来才发现PHP在浏览器运行的和php cli模式运行不一致,
mamp 环境下使用php版本是5.6.3
而php cli模式下使用的版本是 5.6.25
mac自带PHP,和apache
安装步骤
git clone https://github.com/phpredis/phpredis.git
cd phpredis
/usr/bin/phpize
./configure --with-php-config=/usr/bin/php-config
make && make install
查看有么有安装上redis扩展
php -m|grep redis
最后一张图就说明安装上了
然后再进行测试
发现报这个错误 那么需要启动redis服务
注意 可能redis.so 不能直接复制到这个目录/usr/lib/php/extensions/no-debug-non-zts-20131226
是因为mac系统不允许修改
所以解决方法就是禁掉SIP保护机制,步骤是:
重启系统按住Command + R (重新亮屏之后就开始按,象征地按几秒再松开,出现苹果标志,ok)菜单“实用工具” ==>> “终端” ==>> 输入csrutil disable;执行后会输出:Successfully disabled System Integrity Protection. Please restart the machine for the changes to take effect.再次重启系统
禁止掉SIP后,就可以顺利的安装了,当然装完了以后你可以重新打开SIP,方法同上,只是命令是csrutil enable
最后将/modules生成目录的redis.so文件复制到目录/usr/lib/php/extensions/no-debug-non-zts-20131226即可