升级了php7 后,发现所有的拓展不可用,于是百度遍了所有答案,终于找到了一个可以用的php7的redis拓展
这篇是我找到的唯一的可以用的文章
https://blog.csdn.net/post_mans/article/details/78519128?locationNum=2&fps=1
windows 下载 通过ftp传到linux服务器上
下载:https://codeload.github.com/phpredis/phpredis/zip/develop
解压:
unzip phpredis-develop.zip
进入目录:
cd phpredis-develop
##重新编译phpize:/usr/local/php/bin/phpize(无需切换目录,直接执行自己找到的phpize)
[root@localhost phpredis-develop]# find / -name 'phpize'
/usr/local/php/bin/phpize ##一般是在你安装的php目录里面的
执行:
/usr/local/php/bin/phpize
##找到php-config:find / -name 'php-config'
[root@localhost phpredis-develop]# find / -name 'php-config'
/usr/local/php/bin/php-config
[root@localhost phpredis-develop]# ./configure --with-php-config=/usr/local/php/bin/php-config(不用切换目录,把找到的php-config路径填到此命令的参数里)
[root@localhost phpredis-develop]# make && make install
上面是指 redis.so 存在/usr/local/php/lib/php/extensions/no-debug-zts-20170718/redis.so
查看一下
修改php.ini
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20170718/redis.so
重启php
重启nginx
/usr/local/php/bin/php -m
查看php安装的拓展
这样就安装成功了
之前绕了很多弯子 碰到这种问题
[root@iZ25sm8911qZ ~]# /usr/local/php/bin/php -m
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php/lib/php/extensions/no-debug-zts-20170718/mysql.so' (tried: /usr/local/php/lib/php/extensions/no-debug-zts-20170718/mysql.so (/usr/local/php/lib/php/extensions/no-debug-zts-20170718/mysql.so: undefined symbol: executor_globals), /usr/local/php/lib/php/extensions/no-debug-zts-20170718//usr/local/php/lib/php/extensions/no-debug-zts-20170718/mysql.so.so (/usr/local/php/lib/php/extensions/no-debug-zts-20170718//usr/local/php/lib/php/extensions/no-debug-zts-20170718/mysql.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
这些都是编译不成功的错误
之前我就是下了好几个phpredis版本 都不行 可幸的是这个是可以用
切记升级前一定要把之前的删除或者重命名