Apache和PHP版本之间是否有任何限制

时间:2013-12-29 03:53:09

标签: php apache2

apache和php版本之间有什么限制吗?假设我正在运行Apache 2.2版。我是否仅限于某些PHP版本(5.3?),超出该版本(5.4或5.5),PHP无法作为apache模块运行?

更具体地说,mod_php绑定到某个PHP版本吗?

1 个答案:

答案 0 :(得分:4)

一般情况下,Apache并不关心您使用的是哪个版本的PHP,并且PHP并不关心您使用的是哪个版本的Apache。我说“一般”,因为可能会有一些极端的情况,你很可能知道你甚至在开始之前就陷入了混乱。但是对于常用,不用担心。

例如,在我的桌面上,我使用运行Apache 2.2.25和PHP 5.5.3的MAMP。事实上,如果需要,我可以切换MAMP以使用PHP 5.2.17。在其他设置中,您可以选择许多不同的PHP模块版本加载到Apache中。以Ubuntu 12.04为例,您只需编辑此文件:

/etc/apache2/mods-available/php5.load

让它加载你想要加载的任何PHP模块:

LoadModule php5_module /usr/lib/apache2/modules/libphp5.so

名称libphp5.so与内容关系不大。这是编译时文件的名称。对于我自己的测试目的,在手动编译时,我已重命名libphp5.so以下所有&它一直很好:

LoadModule php5_module        /usr/lib/apache2/modules/libphp535.so
LoadModule php5_module        /usr/lib/apache2/modules/libphp533-gd.so
LoadModule php5_module        /usr/lib/apache2/modules/libphp530-gd.so
LoadModule php5_module        /usr/lib/apache2/modules/libphp529-gd.so
LoadModule php5_module        /usr/lib/apache2/modules/libphp525-gd.so
LoadModule php5_module        /usr/lib/apache2/modules/libphp516-gd.so

我甚至手动编译了PHP 5.1.6 -painful但是可行的&一个项目所必需的 - 运行Apache 2.2.25的Ubuntu 12.04设置没有任何问题。编译PHP 5.1.6时遇到的最大问题就是确保我在系统上加载或安装了正确的库。但这是一个你不想知道的噩梦!

通常,从PHP 5.3升级到PHP 5.4或5.5应该是一个相对简单的过程。不用担心。