系统信息
操作系统 CentOS Linux 6.7
在x86_64上的内核和CPU Linux 2.6.32-042stab108.1
yum repolist enabled
只有我手动添加的
- 基地 – CentOS-6 –
- 基础epel – 用于Enterprise Linux 6的额外软件包 – x86_64
- 额外 – CentOS-6 – 其他
- ius – 适用于Enterprise Linux 6的IUS社区软件包 – x86_64
- mod-pagespeed – mod-pagespeed
- remi-safe – 用于Enterprise Linux 6的安全Remi的RPM存储库 – x86_64
- rhscl-php55-epel-6-x86_64 – PHP 5.5.21 –
- epel-6-x86_64更新 – CentOS-6 – 更新
- virtualmin – RHEL / CentOS / Scientific 6 – x86_64 –
- Virtualmin virtualmin-universal – Virtualmin分配中立
- 软件包vz-base – vz-base vz-updates – vz-updates
可用的安装版本
我尝试了以下(使用virtualmin)
home/<domain>/domains/<subdomain>.<domain>.com/public_html/public和phpinfo(); returns 5.3.3 version phpinfo(); returns 5.3.3 version yum replace php-common --replace-with=php55-php-common有太多的包WARNING: Unable to resolve all providers ,并没有继续。 yum upgrade php 有人可以帮助这个令人沮丧的情况吗? 我真的以为安装另一个版本,并启用它的目录将解决这个问题。
我们build议您使用SCL版本的软件包,这样PHP版本可以和平共处,而不会引起冲突。 我已经在我们的新服务器上运行了Remi的PHP 5.6.15包,在Virtualmin下运行,并且工作正常(我必须调整php-lib.pl中的检测代码,尽pipe在几天之内不需要当新的Virtualmin出来)。
另外,你应该使用fcgid执行模式,而不是 mod_php。 mod_php只能在单个Apache实例中的一个版本中存在,并且不会与多个版本一起使用。 fcgid是使用install.sh安装的Virtualmin系统中的默认执行模式,但可在“系统设置:服务器模板:模板名称:Apache网站”中进行configuration。 “默认的PHP执行模式”是你想要的选项,FCGId是使用多个PHP版本(以及其他各种其他原因)的正确值。
当前版本的Virtualmin不支持所有的SCL PHP软件包,但是下一个版本可以很容易地处理任意版本(并且可能有能力查询SCL命令找出你喜欢的PHP版本;我不知道不知道有多less实施了)。
在过去的几周里,在我们的论坛上,关于这个问题已经有相当多的讨论,因为SCL已经获得了更多的PHP版本,并且Virtualmin对SCL包的支持得到了扩展。
这里有一些文档(我不确定是否Eric已经更新了,以解决SCL的最近的变化,但是如果还没有的话,他们将很快):
注意,Apache无法pipe理各种版本的PHP(使用mod_php),所以你只能安装“php”或“php55-php”
要在Apache HTTPD服务器中启用不同版本的PHP,您需要使用“FPM”。
使用Apache 2.2(在CentOS 6.x中),您必须使用mod_proxy_fastcgi(在EPEL中可用,从2.4反向移植)和ProxyPass指令。
Apache 2.4(在CentOS 7.x中)更简单,它支持SetHandler到fastcgi代理。
一些例子: