隔离AWS EC2上的PHP版本

我实际上在我的所有项目中使用PHP 5.3。 但是出于所有你知道的原因,我想更新到PHP 5.4(或5.5)。

我们也将很快在“常规”Linux,Debian Wheezy上进行AWS EC2迁移。

但问题是,我们有一些旧项目因为某些原因无法迁移到PHP 5.3,而且由于某些其他原因,我们无法删除它们。

所以我想知道在我们的AWS EC2实例中隔离这些项目的最好方法是使用多个版本的PHP / Apache。

我正在考虑使用Docker,所以我们可以轻松地安装其他的PHP / Apache而不是在主系统上。 另外知道这是一种虚拟机听起来不错,所以它不会对主要的“服务器”有任何影响。

这是最好的解决scheme吗?

编辑:另外,由于一些成本原因,我们不能承担另一个EC2实例

你没有提到操作系统,但假设它是基于Linux的最好的解决scheme是创build多个应用程序的用户,并通过编译在各自的应用程序用户的主目录安装不同版本的PHP。

例如,创build用户user1(主目录:/ home / user1 /)和user2(主目录:/ home / user2 /)。 现在切换到user1,分别在/ home / user1 / app / php和/ home / user1 / app / apache下通过编译安装php5.3和apache。 为user2做同样的事情,但这次是另一个版本的PHP。 请记住,Apache必须在不同的端口上运行,以避免端口冲突。 你可以安装第三个Apache作为一个反向代理与多个虚拟主机,将接受80端口的stream量,并将发送到不同的后端apaches基于请求。

交通将是这样的

client http request <--> apache rp <---> app1 based on apache1 or app2 based on apache2 

问候

Rajarshi Haldar

为什么不使用php-fpm并安装其中的两个? 然后你可以决定使用哪一个虚拟主机。 所以每个虚拟主机都可以拥有自己的PHP版本。 在这种情况下,你只有一个Apache服务器运行。

这应该是很容易find关于谷歌的教程。