简单几步安装PHP扩展

有时候在安装PHP的时候,会漏掉一些平时不太常用的扩展,到以后再要去安装的时候,时常会因为版本不对出现各种问题,本文主要介绍一下通过简单几步安装扩展的方式。

步骤

  1. 先确定当前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解压。如果有源码包,跳过;

  2. 进入到ext下扩展目录cd php/ext/module

  3. 运行phpize,在当前目录下生成configure;

  4. 运行./configure --with-php-config=/usr/local/php/bin/php-config 运行时参数指定配置选项;

  5. 运行make && make install编译并安装;

  6. 重启php-fpm,kill -USR2 1234 1234 php-fpm的master进程id);

  7. 运行php -m 查看已安装扩展

举例

安装IMAP扩展

  1. 进入到imap目录:cd /usr/local/php7.1.3/ext/imap

  2. 运行usr/local/php/bin/phpize生成configure配置文件;

  3. ./configure --with-php-config=/usr/local/php/bin/php-config --with-imap=/usr/lib64 --with-imap-ssl --with-kerberos 配置IMAP选项;

  4. make && make install编译并安装;

安装报错

如果出现报错,就兵来将挡水来土掩好了:

  1. configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing

    解决:
    
    先安装软件包:`yum install -y libc-client-devel`
    
  2. 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即可