在本地开发的时候,由于项目的需求,有些项目是基于PHP 5.2,而有些项目可能是基于PHP 5.4,又或者其他小版本号都对应,所以经常会在多个PHP版本中来回切换,对于本地开发还是稍有些麻烦的。我要怎么样才能在Apache上支持多个版本的PHP同时运行,而不用每次使用都去更改配置重启Apache呢;通过分析网上的资料和自己的实践,发现可以使用Fastcgi方式来实现这个想法。本文将讲解如何在Linux或Windows下安装支持多版本PHP(5.[2|3|4|5].x)同时运行,Mac OS X下以前使用过Nginx加PHP-FPM端口映射实现,Apache的方案未经实际测试,理论上与Linux操作类似。Windows (测试环境Windows 7)1. 下载所需软件Win7 64位系统httpd 2.2.25 win32-x86-openssl-0.9.8yMicrosoft .NET Framework 4 Client Profilemysql-installer-web-community-5.6.19.0.msiPHP 5.5.14 VC11 x64 Thread SafePHP 5.4.30 VC9 x86 Thread SafePHP 5.3.28 VC9 x86 Thread SafeMicrosoft Visual C++ 2008 SP1 Redistributable Package (x64)Visual C++ Redistributable for Visual Studio 2012 Update 4Win7 32位系统httpd 2.2.25 win32-x86-openssl-0.9.8yMicrosoft .NET Framework 4 Client Profilemysql-installer-web-community-5.6.19.0.msiPHP 5.5.14 VC11 x86 Thread SafePHP 5.4.30 VC9 x86 Thread SafePHP 5.3.28 VC9 x86 Thread SafePHP 5.2.17 VC6 x86 Thread SafeMicrosoft Visual C++ 2008 SP1 Redistributable Package (x86)Visual C++ Redistributable for Visual Studio 2012 Update 42. 安装类库安装Apache与PHP之前先安装.Net Framework及以上几个Visual C++的类库。3. 安装MySQL双击MySQL的安装文件,按照提示一步一步安装完成。4. 安装Apache双击Apache的安装文件,按照提示一步一步安装完成,安装时请设置将Apache安装到C:/web/apache-2.2目录下。5. 安装PHP将已经下载的各PHP版本的zip直接解压到C:/web/php目录下,如php 5.2.17版本的,解压到C:/web/php/5217目录下,其他版本类似。安装完成后,应该会有以下一些目录:C:/web/php/5217/C:/web/php/5328/C:/web/php/5430/C:/web/php/5514/6. 配置Apache启用mod_rewrite模块与加载默认的virtual hosts文件。编辑文件C:/web/apache-2.2/httpd.conf,取消如下几行的注释后保存文件。添加PHP支持与虚拟主机配置。编辑文件C:/web/apache-2.2/extra/httpd-vhosts.conf,文件内容如下:保存配置后,创建各站点的DocumentRoot目录,再往每个目录放置一个phpinfo的测试文件,完成后重启Apache服务器并在本地hosts文件加入域名解析,现在就可以访问各站点来测试多版本PHP共存了。Linux (测试环境 Ubuntu 12.04 Server X86_64)1. 安装编译工具及所需类库2. 安装MySQL3. 安装PHPLinux下多版本PHP共存需要自己手工编译安装。下载PHP源文件到/opt/src目录创建PHP各版本安装目录安装PHP 5.2.17安装PHP 5.3.28安装PHP 5.4.29安装PHP 5.5.144. 安装Apache启用相应模块5. 配置Apache追加如下脚本映射和虚拟主机配置,原理同Windows的配置说明。保存配置后,创建各站点的DocumentRoot目录,再往每个目录放置一个phpinfo的测试文件,完成后重启Apache服务器并在本地hosts文件加入域名解析,现在就可以访问各站点来测试多版本PHP共存了。好了,基本的多版本PHP共存解决方案已经完成,如果还需要添加其他的PHP类库支持,后续自己再调用对应php目录下的pecl, php_config等脚本编译安装就可以了。原文:http://www.ciandt.com.cn/blog/php-multiple-version-configuration