1.下载编译安装redis
$ wget https://github.com/phpredis/phpredis/archive/2.2.4.tar.gz $ cd phpredis-2.2.7 # 进入 phpredis 目录 $ /usr/local/php/bin/phpize # php安装后的路径,使用phpize生成编译文件 $ ./configure --with-php-config=/usr/local/php/bin/php-config $ make && make install
2.修改php.ini添加redis扩展
vi /usr/local/php/lib/php.ini 增加如下内容: extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20090626" extension=redis.so
lnmp环境下,php.ini文件在/usr/local/php/etc/php.ini,这里会有些不同。
有的会在编译时(make && make install)出现下面的错误
fatal error: ext/standard/php_smart_str.h: No such file or directory
那是因为你是PHP7版本,我们需要从github,下载指定的分支
git clone https://github.com/phpredis/phpredis.git cd php redis/ git checkout php7 phpize ./configure make && make install 启动扩展 光安装了还不够,我们还需要编辑PHP的配置文件来使扩展被加载才行, vi /uer/local/php/etc/php.ini,在配置文件中添加如下语句: extension=redis.so
还有情况你会在执行,./config时,让你制定php-config的路径
configure: error: Cannot find php-config. Please use --with-php-config=PATH//这里指定路径 [[email protected] phpredis]# ./configure --with-php-config=/usr/local/php/bin/php-config
再一次执行 make && make install ,结果如下:
Build complete. Don‘t forget to run ‘make test‘. Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/
查下php扩展下的redis.so文件,是否生成
[[email protected] no-debug-non-zts-20160303]# ll total 6644 -rwxr-xr-x 1 root root 3418276 Jun 28 13:45 opcache.a -rwxr-xr-x 1 root root 1635527 Jun 28 13:45 opcache.so -rwxr-xr-x 1 root root 1730895 Jun 28 22:32 redis.so
再次vi php.ini,加上,不用加路径了,直接写下面的这段代码,重启服务,查看phpinfo
extension=redis.so
完成!
自己踩过的坑,只有自己才知道
时间: 2024-10-20 05:30:45