首先在没有任何报错的情况下(但不太可能)按如下步骤
git clone https://github.com/phpredis/phpredis
cd phpredis
phpize
./configure
make
sudo make install
极有在phpize情况下出现
grep: /usr/include/php/main/php.h: No such file or directory
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory
Configuring for:
PHP Api Version:
Zend Module Api No:
Zend Extension Api No:
解决办法
确保SIP已关闭
苹果在全新的 OS X El Capitan 10.11系统上已经使用了 Rootlees , 可以理解为一个更高等级的系统的内核保护措施,系统默认将会锁定 /system /sbin /usr 这三个目录,就算使用sudo也是无权限操作的,作为开发者经常会修改使用这些目录,所以这个保护需要关闭才能使用。
1.重启mac电脑,同时按住command+r,等出现进度条了再松开
2.弹出界面的工具条,选择“实用工具”,再选择“终端”,输入:csrutil disable,然后回车。会有英文提示成功
3.重新启动电脑
4重启后做如下操作(这个不需要安装x-code,x-code有11个g,想想都怕)
sudo mount -uw /
sudo ln -s "$(xcrun --show-sdk-path)/usr/include" /usr/include
export SDKROOT="$(xcrun --show-sdk-path)"
echo "export SDKROOT=\"\$(xcrun --show-sdk-path)\"" >> ~/.bash_profile
sudo DevToolsSecurity -enable
5 重新从phpize 开始往下操作
安装完成后在/etc/php.ini下加入extension=redis.so 之后重启php-fpm 即可
tips
重启php-fpm 命令
sudo lsof -i:9000
sudo killall php-fpm
sudo php-fpm
安装phpredis就此over
(之后还可能有redis的报错:NOAUTH Authentication required)我正在看如何解决。。。。。(可能是php 的配置问题,不同的人可能有不同的情况,我的如下)
我的是redis.db 的值本应该是0 我写成了2造成了报错。
附redis 启动重启及其命令行 命令
# 启动
redis-server
#重启
brew services restart redis
# 命令行
redis-cli