有时候在安装PHP的时候,会漏掉一些平时不太常用的扩展,到以后再要去安装的时候,时常会因为版本不对出现各种问题,本文主要介绍一下通过简单几步安装扩展的方式。
步骤
先确定当前PHP版本
php -v
。如果服务器上没有PHP源码包,执行wget -c https://www.php.net/distributions/php-7.1.3.tar.gz
下载对应的源码包(7.1.3
为版本号,可任意替换你需要的版本),运行tar -xzvf php-7.1.3.tar.gz
解压。如果有源码包,跳过;进入到ext下扩展目录
cd php/ext/module
;运行phpize,在当前目录下生成configure;
运行
./configure --with-php-config=/usr/local/php/bin/php-config 运行时参数
指定配置选项;运行
make && make install
编译并安装;重启php-fpm,
kill -USR2 1234
(1234
php-fpm的master进程id);运行
php -m
查看已安装扩展
举例
安装IMAP扩展
进入到imap目录:
cd /usr/local/php7.1.3/ext/imap
;运行
usr/local/php/bin/phpize
生成configure配置文件;./configure --with-php-config=/usr/local/php/bin/php-config --with-imap=/usr/lib64 --with-imap-ssl --with-kerberos
配置IMAP选项;make && make install
编译并安装;
安装报错
如果出现报错,就兵来将挡水来土掩好了:
configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing
解决: 先安装软件包:`yum install -y libc-client-devel`
configure: error: Cannot find imap library (libc-client.a). Please check your c-client installation
解决: 增加软链接:`ln -s /usr/lib64/libc-client.so /usr/lib/libc-client.so`
解决完报错,再执行make && make install
,重启php-fpm即可