我们在使用PHP的邮件服务时,会用到PHP的IMAP扩展,本文讲述,在lnmp1.6版本下安装IMAP扩展,以及遇到的问题。
首先找到lnmp源码包解压后的文件夹
1 | [root@localhost ~]# cd /usr/local/src/lnmp1.6 |
然后找php的源码包,在 src
目录下
1 | [root@localhost lnmp1.6]# cd src |
解压php源码包
1 | # tar -xvf php-7.2.24.tar.bz2 |
进入php源码包解压后的文件夹
1 | [root@localhost src]# cd php-7.2.24 |
找到php扩展imap文件夹
1 | [root@localhost php-7.2.24]# cd ext/imap/ |
开始执行如下命令,安装imap
1 | [root@localhost imap]# /usr/local/php/bin/phpize |
执行配置命令
1 | [root@localhost imap]# ./configure --with-php-config=/usr/local/php/bin/php-config --with-kerberos --with-imap-ssl |
如果此处报错,报错内容是:
1 | configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers. |
此报错是警告信息,可以忽略
1 | configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information. |
此报错是因为没有 libc-client-devel
,执行如下命令安装libc-client-devel
先运行
1 | [root@localhost imap]# yum install -y libc-client-devel |
如果提示(如果Linux版本是7可能会出现的情况)
1 | No package libc-client available. |
则运行如下命令
1 | [root@localhost imap]# yum install -y epel-release perl |
再次执行配置命令
1 | [root@localhost imap]# ./configure --with-php-config=/usr/local/php/bin/php-config --with-kerberos --with-imap-ssl |
如果报错,报错内容为:
1 | configure: error: Cannot find imap library (libc-client.a). Please check your c-client installation. |
执行如下命令解决
1 | # 环境lnmp最新版本 |
再次执行配置命令
1 | [root@localhost imap]# ./configure --with-php-config=/usr/local/php/bin/php-config --with-kerberos --with-imap-ssl |
没有报错的话,执行安装命令
1 | make &&make install |
如果安装成功后,修改php配置文件
1 | # vim /usr/local/php/etc/php.ini |
把 extension=imap
前的 ;
去掉,保存。
重启lnmp服务
1 | lnmp restart |