php 4 和 Php 5 共存

最近要用到新的PHP5,但又不想影响原来的PHP4,因此找了很多共存的方法,但都不大理想,最后
找到了一篇比较好的文章,讲的都是用APACHE来实现共存的,用不同的端口,十分方便,现转载如下

下载 PHP 4 for Windows Zip 二进制包,解压到任意目录(我解压到 E:php),将里面的 php.ini-dist 更名为 php.ini。将 php.ini 和 php4ts.dll 复制到 windows 安装目录中。

下载 PHP 5 for Windows Zip 二进制包,解压到任意非 PHP 4 的目录(我解压到 E:php5),将里面的 php.ini-dist 更名为 php.ini。

下面修改 Apache2 的 httpd.conf 文件。修改的关键是使用 IfDefine 指令:找到代码:

Listen 80

这行,修改为

代码: <ifdefine !php=php5> Listen 80 </ifdefine> <ifdefine php=php5> Listen 81 </ifdefine>

在 httpd.conf 的末尾添加

代码:

<ifdefine !php=php5> LoadModule php4_module "e:/php/sapi/php4apache2.dll" </ifdefine>

<ifdefine php=php5> LoadModule php5_module "e:/php5/php5apache2.dll" PHPINIDir "e:/php5/php.ini" </ifdefine>

AddType application/x-httpd-php .php AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php4 AddType application/x-httpd-php .php5 AddType application/x-httpd-php-source .phps

其他的指令,比如 DirectoryIndex 和 AddDefaultCharset 请自己设置。

下一步是创建两个包含不同运行参数的 Apache 服务。在命令提示符,进入 Apache2 安装目录中的 bin 目录,运行代码:

apache -k install -D php=php5 -n Apache2PHP5

这样就创建了一个包含 php5 运行参数的新 Apache 服务,名为 Apache2PHP5。


注意,也要把php5目录下的php5ts.dll复制到c:\winnt\system32下
然后启动 Apache2PHP5 服务并重启 Apache2 服务,您可以到 管理工具->服务 中启动,也可以使用 Apache 2 自带的 Monitor Apache Servers 启动。

访问 http://localhost/ 即使用 PHP 4,访问 http://localhost:81/ 即使用 PHP 5。

你可能感兴趣的:(PHP)