使用phpenv、PHP构建和PHP版本的多个PHP版本
我在ArchLinux上,试图配置多个PHP版本来测试我的脚本 我基于以下三个工具:使用phpenv、PHP构建和PHP版本的多个PHP版本,php,linux,apache,Php,Linux,Apache,我在ArchLinux上,试图配置多个PHP版本来测试我的脚本 我基于以下三个工具: 首先,我用pacman安装了Apache和PHP(及其集成包): # pacman -S php apache php-apache 接下来,我按照说明在链接上安装工具,一切正常 我通过php build工具使用phpenv install安装了两个版本。我得到了这样的东西: -- ~ |---.phpenv |---lib |---versions |---5.5.1 |-
# pacman -S php apache php-apache
接下来,我按照说明在链接上安装工具,一切正常
我通过php build
工具使用phpenv install
安装了两个版本。我得到了这样的东西:
-- ~
|---.phpenv
|---lib
|---versions
|---5.5.1
|---5.4.17
|--- (some more folders)
在CLI环境中,一切正常,使用php版本
,我可以轻松地在两个版本之间切换:
$ php-version 5.5.1
$ php --version
PHP 5.5.1 (cli) (built: Aug 5 2013 22:54:47)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
with Zend OPcache v7.0.2-dev, Copyright (c) 1999-2013, by Zend Technologies
with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans
$ php-version 5.4.17
$ php --version
PHP 5.4.17 (cli) (built: Aug 5 2013 23:19:44)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans
现在的问题是:将其与apache集成
正如我在本文开头所说的,我还必须从Arch存储库安装PHP,这恰好是在5.4.17版上。此安装在Apache上运行良好
在php env
readme上有以下说明:
phpenv支持apacheapxs库的动态切换并安装
将在下为Apache构建并安装libphp5.so共享库
libexec文件夹的版本
通过调用phpenv global来显示或更改全局PHP版本a
链接是在~/.phpenv/lib/libphp5.so下为适当的
发布版本。此链接可用于Apache的LoadModule
php5_模块指令,并要求Apache在更改时重新启动
问题是在lib
目录中没有名为libphp5.so
的文件或符号链接,在整个.phpenv
文件夹中也没有,因为
$ find ~/.phpenv -name libphp5.so
不返回任何内容
可能是因为英语不是我的第一语言,我在理解上面引语的第二段时遇到了一些问题。在AUR中有一个phpenv的软件包 以及许多不同版本的PHP的软件包 首先安装phpenv: 雅乌特普涅夫 然后安装所需的php版本,例如: 雅奥尔特php53_29_环境
注意:即使这样,您也可能会遇到问题。检查包的构建,它似乎缺少了一个补丁,当apache运行线程安全的mpm时,该补丁可以禁用PHP自动编译的线程安全特性。不太确定,因为在我的系统上,我希望PHP能够启用线程安全代码,这样它就可以为我工作。很抱歉,您的问题尚未得到回答。你们有什么进展可以分享吗?我最终放弃了在Arch上安装它。在基于debian的发行版上,可以使用phpbrew(),它不符合我的初衷,但运行良好。基本上,使用它我可以编译各种版本的
libphp5.so
命名为libphp551.so
,libphp5417.so
,并使用命令行工具在不同版本之间切换。我想要的是将一个版本关联到一个特定的端口或类似的东西。好的,这不是我所希望的,但是谢谢你提供的信息!定位libphp5.so的输出是什么?还有,对~/.phpenv
及其子文件夹有什么感兴趣的吗?