在亚马逊 ec2 linux 2 上安装 php-imap

Leo*_*ini 3 imap amazon-ec2 amazon-web-services php-7.2

我需要在亚马逊 ec2 linux 2 实例上安装 php-imap。所有的 php 东西都在 amzn2extra-lamp-mariadb10.2-php7.2 里面,但是缺少 php-imap 包。有什么建议吗?

谢谢

Rob*_*dán 6

我是这样安装的。

我在我的 Amazon Linux 2 中下载了当前安装版本的 php 源代码

wget http://php.net/get/php-7.2.8.tar.bz2/from/a/mirror
Run Code Online (Sandbox Code Playgroud)

解压进入php-7.2.8/ext/imap/

编译扩展:

phpize
./configure
Run Code Online (Sandbox Code Playgroud)

我有一些错误。

一些 U8T_CANONICAL 的东西所以

sudo yum install libc-client-devel
Run Code Online (Sandbox Code Playgroud)

然后找不到 libc-client.a,因此为它创建了一个符号链接:

cd /usr/lib
sudo ln -s /usr/lib64/libc-client.a
Run Code Online (Sandbox Code Playgroud)

其他一些 imap 库错误,因此:

sudo yum install uw-imap-static
Run Code Online (Sandbox Code Playgroud)

我遇到了其他一些错误,因此工作配置行是:

./configure --with-kerberos --with-imap-ssl
make
Run Code Online (Sandbox Code Playgroud)

成功!

cd php-7.2.8/ext/imap/modules
sudo cp imap.so /usr/lib64/php/modules/
Run Code Online (Sandbox Code Playgroud)

创建一个ini文件来加载它:

sudo vi /etc/php.d/30-imap.ini
Run Code Online (Sandbox Code Playgroud)

将此内容添加到文件中:

extension=imap
Run Code Online (Sandbox Code Playgroud)

重新启动 php 服务(根据您的 php 安装,您可能需要重新启动 httpd):

sudo systemctl restart php-fpm
Run Code Online (Sandbox Code Playgroud)

PHPinfo 现在包含: imap IMAP c-Client Version 2007f SSL Support enabled Kerberos Support enabled