标签:
问题背景:今天在新项目中调用了个发短信的接口,该接口是rpc封装好的一个服务,代码调用了\Redis::SERIALIZER_IGBINARY,本来在本地好好的,发到alpha环境报
Undefined class constant ‘SERIALIZER_IGBINARY‘,Google了下发现是少了个igbinary扩展,因为我本地是装好了的,所以本地正常运行,下面是解决方法 。
解决方法:
1、安装igbinary扩展
1 wget http://pecl.php.net/get/igbinary-1.2.1.tgz 2 tar zxvf igbinary-1.2.1.tgz 3 cd igbinary-1.2.1 4 /usr/local/php/bin/phpize 5 ./configure --with-php-config=/usr/local/php/bin/php-config 6 make 7 make install
2、重新编译phpredis扩展
直接删除phpredis目录,重新下载编译
1 wget http://download.redis.io/releases/redis-2.6.14.tar.gz 2 tar zxvf redis-2.6.14.tar.gz 3 cd redis-2.6.14 4 /usr/local/php/bin/phpize 5 ./configure --enable-redis-igbinary --with-php-config=/usr/local/php/bin/php-config 6 make 7 make install
3、php.ini加载扩展
1 vim /usr/local/php/etc/php.ini 2 加上: 3 extensions=igbinary.so (加载redis 扩展之前) 4 extensions=redis .so
4、重启配置文件
1 /etc/init.d/nginx reload 2 /etc/init.d/php-fpm restart
再重新访问,success
Undefined class constant 'SERIALIZER_IGBINARY' 解决方法
标签:
原文地址:http://www.cnblogs.com/hadeswp/p/5819737.html