問題:
在重啟php-fpm的過程中,發生了如下的錯誤,redis.so無法載入
1 2 3 4 |
[root@brand009 modules]# /usr/sbin/php-fpm
/usr/sbin/php-fpm: /usr/lib64/libssl.so.10: no version information available (required by /usr/sbin/php-fpm)
/usr/sbin/php-fpm: /usr/lib64/libcrypto.so.10: no version information available (required by /usr/sbin/php-fpm)
/usr/sbin/php-fpm: /usr/lib64/libcrypto.so.10: no version information available (required by /usr/sbin/php-fpm)
|
解決思路:
1、用php --version查詢了一下PHP的版本,是5.6.6
1 2 3 4 |
php --version
PHP 5.6.6 (cli) (built: Mar 9 2015 13:27:38)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
|
2、這個php-fpm的版本,發現是5.3.3
1 2 3 4 |
$/usr/sbin/php-fpm -v
PHP 5.3.3 (fpm-fcgi) (built: Oct 30 2014 20:14:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
|
3、而PHP內部集成的php-fpm版本是5.6.6
1 2 3 4 |
$ /usr/local/php/sbin/php-fpm -v
PHP 5.6.6 (fpm-fcgi) (built: Mar 9 2015 13:27:55)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
|
錯誤原因:
php -fpm版本與php版本不一致。
用PHP內部集成的php-fpm重啟,成功!
1 2 3 4 |
root 18442 1 0 17:36 ? 00:00:01 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
nobody 30640 18442 0 18:04 ? 00:00:02 php-fpm: pool www
nobody 31156 18442 0 18:05 ? 00:00:02 php-fpm: pool www
nobody 32424 18442 0 18:08 ? 00:00:02 php-fpm: pool www
|
注意:
在php.ini中一定要配置extension_dir和extension,如:
1 2 |
extension_dir = "/usr/lib64/php/modules/"
extension=redis.so
|
phpredis編譯出來的redis.so也需要拷貝到"/usr/lib64/php/modules/"中;
"/etc/php.d/"中也要軟連接redis.so,並且要創建一個redis.ini文件,內容如下:
安裝phpredis還可以通過命令: