如何在 aws EC2 实例上启用 IMAP php 扩展

如何在 aws EC2 实例上启用 IMAP php 扩展

我尝试过各种方法来安装映射php 扩展,但我做不到。我正在使用亚马逊网络服务EC2 实例,并且它CentOS。虽然yum search *-imap.*我从 找到了一个包,cyrus-imap.*但它不起作用。我已经安装了它,但它似乎不是我想要的包。我尝试了很多方法,但在 cent os 上没有带有 php-imap 的包。

我的应用程序急需php-imap扩展。我的 php 配置

# php -v 
PHP 7.2.31 (cli) (built: Jul  2 2020 23:17:00) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

有人能帮忙吗?提前致谢。

答案1

imap 的主要问题是this package is not available as php-imap,所以amazon linux 2我们需要选择其他方法。主要问题是配置构建 imap 安装文件所需的基本文件。因此,整个过程分为两个步骤。

  • 一是设置开发工具。
  • 二是建设映射来自安装文件。

按照我的以下说明进行操作

  • sudo yum groupinstall "Development Tools"
  • 安装 epel realesesudo amazon-linux-extras install epel然后yum install epel-release
  • 安装一些依赖项sudo yum install libc-client-devel uw-imap-static openssl-devel
  • 创建符号链接sudo ln -s /usr/lib64/libc-client.a /usr/lib
  • 现在下载完整版php从官方 php 网站下载文件。我们需要核心文件来构建 imap 扩展。然后转到您的根文件cd~wget https://www.php.net/distributions/php-7.x.x.tar.gz
  • 解压 tar.gz:tar -xf php-7.x.x.tar.gz
  • 现在进入目录
cd php-7.x.x/ext/imap
phpize
./configure --with-kerberos --with-imap-ssl
make
  • 转到模块文件夹并输入cd php-7.x.x/ext/imap/modules
  • sudo cp imap.so /usr/lib64/php/modules/
  • 然后用 nano 打开sudo nano /etc/php.d/30-imap.ini并写入extension=imap
  • 重新启动 httpd 或 php fmpsudo systemctl restart php-fpmsudo systemctl restart httpd
  • 完成。您可以通过输入来查看,php -m | grep imap它将imap以红色字体显示。完成 TIA

相关内容