天天看点

centos6和centos7手动扩展PHP的IMAP模块

一、centos6.7 x64上手动扩展PHP的IMAP模块

1、准备

yum install -y libc-client-devel

ln -s /usr/lib64/libc-client.so /usr/lib/libc-client.so

ln -s /usr/lib64/libkrb5.so /usr/lib/libkrb5.so

ln -s /usr/lib64/libssl.so /usr/lib/libssl.so

2、安装

cd/usr/local/php-5.5.35/ext/imap/

/usr/local/php/bin/phpize

./configure -with-imap -with-php-config=/usr/local/php/bin/php-config --with-kerberos=/usr --with-imap-ssl=/usr

make

make install

<a href="https://s1.51cto.com/wyfs02/M01/8D/7B/wKioL1idiS3yepvJAAAtk1JeqcU196.png" target="_blank"></a>

3、添加模块

vim /usr/local/php/etc/php.ini                     //添加

extension = "imap.so"

重启PHP

/etc/init.d/php-fpm restart

再次查看PHP模块,可以发现已经有imap模块了

<a href="https://s2.51cto.com/wyfs02/M00/8D/7B/wKioL1idiZugDydwAAAUffveljU316.png" target="_blank"></a>

注意:./configure编译报错

报错1:configure: error:utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This shouldnot happen. Check config.log for additional information

解决:

报错2:configure: error:Kerberos libraries not found.  Check thepath given to --with-kerberos (if no path is given, searches in /usr/kerberos,/usr/local and /usr )

解决:ln -s /usr/lib64/libkrb5.so /usr/lib/libkrb5.so

报错3:configure: error:Cannot find OpenSSL's libraries

解决:ln -s /usr/lib64/libssl.so /usr/lib/libssl.so

重新./configure编译即可。

二、centos7.0.1406 x64上手动扩展PHP的IMAP模块

1、安装 php-imap

yum install -y pam-devel

cd /usr/local/src/

tar -zxvf imap-2007f.tar.gz

cd imap-2007f

make lr5 PASSWDTYPE=std SSLTYPE=unix.nopwd EXTRACFLAGS=-fPIC IP=4

mkdir /usr/local/imap-2007f/

mkdir /usr/local/imap-2007f/include/

mkdir /usr/local/imap-2007f/lib/

cp c-client/*.h /usr/local/imap-2007f/include/

cp c-client/*.c /usr/local/imap-2007f/lib/

cp c-client/c-client.a /usr/local/imap-2007f/lib/libc-client.a

2、php手动加载php-imap

cd /usr/local/php-7.1.0/ext/imap/

./configure -with-imap=/usr/local/imap-2007f -with-php-config=/usr/local/php/bin/php-config --with-imap-ssl=/usr

<a href="https://s1.51cto.com/wyfs02/M02/8D/7D/wKiom1idi3TgVd0WAAAwrA8s2A0680.png" target="_blank"></a>

报错:configure: error:Cannot find OpenSSL's libraries

解决:确认已安装过openssl、libssl-dev 包,但是还是会提示该错误

find / -name libssl.so                         //查找到路径为:/usr/lib64/libssl.so

ln -s /usr/lib64/libssl.so /usr/lib

重新编译即可

3、添加php-imap模块

vim /usr/local/php/etc/php.ini                      //添加

extension ="imap.so"

<a href="https://s1.51cto.com/wyfs02/M01/8D/7B/wKioL1idjDCCBXhJAAARaN3D70o455.png" target="_blank"></a>

      本文转自M四月天 51CTO博客,原文链接:http://blog.51cto.com/msiyuetian/1896805,如需转载请自行联系原作者