centos6和centos7手动扩展PHP的IMAP模块
更新:HHH   时间:2023-1-7



一、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


3、添加模块

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

extension = "imap.so"

 

重启PHP

/etc/init.d/php-fpm restart

 

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

 

注意:./configure编译报错

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

解决:

yum install -y libc-client-devel

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

 

报错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/

wget ftp://ftp.cac.washington.edu/imap/imap-2007f.tar.gz

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

 

2php手动加载php-imap

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

/usr/local/php/bin/phpize

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

make

make install



注意:./configure编译报错

报错: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"

 

重启PHP

/etc/init.d/php-fpm restart

 

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





返回web开发教程...