這有一台伺服器,使用nginx加php-fpm,裡面裝了2個版本的PHP,5.3和5.5,現在因為我要安裝新redis擴展,於是我從官網下載redis擴展的源碼包,進行編譯安裝,最後在php.ini加入extension=redis.so最後重啟php-fpm。
於是出現了報錯,意思是我編譯的php擴充使用的版本不一樣
<code>PHP Warning: PHP Startup: redis: Unable to initialize module Module compiled with module API=20100525 PHP compiled with module API=20121212</code>
大概發現了是什麼原因,因為使用php-fpm -v
的版本是5.5,php -v
顯示的版本是5.3,phpize使用的是5.3的。
於是把編譯好的so檔刪除,重新解壓縮原始碼包編譯,使用5.5版的phpize,發現重啟的時候還是一樣,並沒用什麼卵用。
<code>$ /usr/local/php/bin/phpize -v Configuring for: PHP Api Version: 20121113 Zend Module Api No: 20121212 Zend Extension Api No: 220121212 $ sudo /usr/local/php/bin/phpize $ ./configure --with-php-config=/usr/local/php/bin/php-config $ make $ sudo make install</code>
請問這種情況我要怎麼解決啊?我不可能把5.3的版本刪除的,因為是伺服器上面可能是別人還用到了。
這有一台伺服器,使用nginx加php-fpm,裡面裝了2個版本的PHP,5.3和5.5,現在因為我要安裝新redis擴展,於是我從官網下載redis擴展的源碼包,進行編譯安裝,最後在php.ini加入extension=redis.so最後重啟php-fpm。
於是出現了報錯,意思是我編譯的php擴充使用的版本不一樣
<code>PHP Warning: PHP Startup: redis: Unable to initialize module Module compiled with module API=20100525 PHP compiled with module API=20121212</code>
大概發現了是什麼原因,因為使用php-fpm -v
的版本是5.5,php -v
顯示的版本是5.3,phpize使用的是5.3的。
於是把編譯好的so檔刪除,重新解壓縮原始碼包編譯,使用5.5版的phpize,發現重啟的時候還是一樣,並沒用什麼卵用。
<code>$ /usr/local/php/bin/phpize -v Configuring for: PHP Api Version: 20121113 Zend Module Api No: 20121212 Zend Extension Api No: 220121212 $ sudo /usr/local/php/bin/phpize $ ./configure --with-php-config=/usr/local/php/bin/php-config $ make $ sudo make install</code>
請問這種情況我要怎麼解決啊?我不可能把5.3的版本刪除的,因為是伺服器上面可能是別人還用到了。
PHP-config路徑搞對