Linux 下配置 phpredis 的过程和遇到的问题
其實(shí)對于 Linux 系統(tǒng)和 LNMP 環(huán)境并不是很熟,如果有錯誤請指正。
一、關(guān)于 PHP
PHP 的編譯參考了此文:http://blog.aboutc.net/linux/65/compile-and-install-php-on-linux
編譯完成后通過 phpinfo() 查看發(fā)現(xiàn)沒有加載到 php.ini 文件(Loaded Configuration File 配置項(xiàng)為 None),需要手動設(shè)置,否則后面無法加載 redis 擴(kuò)展。
設(shè)置方法為
php-fpm -c /usr/local/php-5.6.21/etc/(參考:http://blog.csdn.net/haitun312366/article/details/38639129)
二、安裝 phpredis
1. 從 git 下載壓縮包然后解壓到?/usr/local/phpredis
2. 按照官方的說明進(jìn)行編譯
cd /usr/local/phpredis phpize ./configure [--enable-redis-igbinary] make && make install結(jié)束以后,會自動把 redis.so 放到 PHP 的 extension_dir。
3. 配置 PHP,編輯 php.ini,增加:
extension=redis.so保存后,重啟 php-fpm:
service php-fpm restart結(jié)束后,通過 phpinfo() 查看是否加載了 redis 擴(kuò)展。
三、遇到的問題
如果重啟 php-fpm 的時候提示:
ERROR: unable to bind listening socket for address '127.0.0.1:9000': Address already in use (98)可以先結(jié)束進(jìn)程再啟動:
killall php-fpm service php-fpm start最頭疼的問題到了,無法正常加載 redis 擴(kuò)展:
PHP Warning: PHP Startup: redis: Unable to initialize module Module compiled with module API=******** PHP compiled with module API=********Google 了很多都說是執(zhí)行編譯源碼包執(zhí)行 phpize 的版本與當(dāng)前 php 環(huán)境中 phpize 的版本不一致造成的,事實(shí)上也的確是這個原因,因?yàn)橄到y(tǒng)之前安裝過其他版本的 PHP。
解決的最直接的方法是,配置 phpredis 的時候指定 phpize 和 php-config 的絕對路徑:https://segmentfault.com/a/1190000003830937
將上面第二步的部分修改為:
cd /usr/local/phpredis /usr/local/php-5.6.21/bin/phpize ./configure --with-php-config=/usr/local/bin/php-config make && make install重啟 php-fpm,查看 phpinfo(),done!
轉(zhuǎn)載于:https://www.cnblogs.com/roving/p/5508188.html
總結(jié)
以上是生活随笔為你收集整理的Linux 下配置 phpredis 的过程和遇到的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QQ音乐项目(OC版) - 实现细节
- 下一篇: Linux查看关机时间