Ubuntu / CentOS – PHP5 imap ssl

我现在想知道,我开发了一个帮助台系统,而不是使用PHPimap库连接到configuration的邮箱,并“拉”通过邮件,并根据内容创build票据。

但是,唉,我遇到了一个问题,我们的应用程序部署在PHP的一些服务器没有编译--with-imap-ssl标志。

我首先想到的解决scheme也是:

  1. 通过SSHlogin到每个服务器
  2. 执行php-config复制构build标志
  3. 使用--with-imap-ssl标志和上一步中的所有其他标志重新编译php

但是,有些客户端可能不会让我们重新编译PHP,因为他们正在将其用于其他应用程序。 而且这也是DevOps Nightmare的一点,因为我们必须在Night上这样做,以确保没有人使用他们的服务器,并让他们知道我们将重新编译php,所以我们将禁用Apache $ N这个过程正在发生。

然后我想另一个解决scheme是:

  1. 获取在服务器上运行的所有不同版本的PHP
  2. 确保所有openSSLpath与/usr相同
  3. 分开一个vm的foreach风格的Linux(CentOS / Ubuntu)
  4. cd /tmp && wget ftp://ftp.cac.washington.edu/imap/imap-2007f.tar.gz或者获取任何其他版本的IMAP人正在运行。
  5. tar xzf imap-2007f.tar.gz
  6. sudo mv imap-2007f /usr/local
  7. 编译imap
  8. 下载所有需要的PHP版本
  9. 使用--with-imap-ssl标志进行编译
  10. 然后,我们将具有所需的“imap.so”文件,我们将需要该特定的 PHP版本
  11. scp该imap.so文件到客户端服务器,并重新启动Apache然后PHP将希望有imap-ssl的支持,而不会破坏服务器上的其他任何东西。

现在的问题是:

  1. 有一个更好的方法吗 ?
  2. 这些方法会起作用吗?
  3. 遵循什么步骤来自动执行此过程?

你有没有使用容器服务,如Docker或LXC? 这将允许您使用您所期望的PHP和OpenSSL(以及许多其他程序)的版本。 它也不会干扰系统的PHP和SSL安装,它是完全独立的。

Docker具有预编译好的PHP环境: https : //hub.docker.com/_/php/

LXC如何: http : //www.phpclasses.org/blog/post/290-Simplify-Your-PHP-Applications-Testing-Using-LXC-in-Your-Development-Environment.html

如果你是集装箱品牌的新手,我会说Docker是一个开始的好地方,因为有很多社区支持它。