原文见:
http://hi.baidu.com/xchinux/blog/item/906553da63758bc9b7fd4816.html最近将
Windows下的
PHP工作环境切换到了
Zend Server CE for Apache/PHP 5.3上了,因为这个PHP是使用VC9(VC2008)
编译的,我也好写
扩展(Qt开发在Windows下使用的是VC2008),并且其最新版本也开始支持Zend Guard Loader(对应的Zend Guard也支持PHP 5.3了),这个功能对于开发商业应用来说,十分重要。但以前一些PHP老项目还在用,并且关键加密过的代码不能在Zend Server for Apache/PHP 5.3下运行,这就需要机器上能同时安装Zend Server CE for Apache/PHP 5.3和5.2的,可惜其
安装文件只支持一个,其实关键在于注册几个服务以及大量的配置文件路径的修改,知道了这个就好办了:
主环境:Zend Server CE for Apache/PHP 5.3,采用正规安装包安装,步骤这里就不讲了,Windows目录为C:\Windows
辅环境:Zend Server CE for Apache/PHP 5.2,手动注册服务,下面是步骤:
1、先找台
没有安装Zend Server CE Windows版的机器,Windows目录为C:\Windows,然后安装Zend Server CE for PHP 5.2,这里假设安装路径为D:\Program Files\ZendServerCE_PHP52
2、安装完毕后,关闭服务(否则就不能拷贝文件了),将D:\Program Files\ZendServerCE_PHP52目录打包,然后拷贝到目标机器上。
3、在目标机器上,解压包到对应
目录即D:\Program Files\ZendServerCE_PHP52,当然这个目录是不能与Zend Server CE for PHP 5.3的安装目录相冲突的。
4、修改配置文件D:\Program Files\ZendServerCE_PHP52\ZendServer\etc\ZendEnablerConf.xml,将开头处的
乱码改为"<?xml",然后修改TEMP目录为C:\Windows\Temp,如:
<Variable name="TEMP" value="C:\Windows\Temp" />
5、注册Apache服务
sc create ZendServerCEPHP5_2 binPath= "\"D:\Program Files\ZendServerCE_PHP52\Apache2\bin\httpd.exe\" -k runservice" start= demand
6、注册Java Bridge Server服务(幸好与Zend Server CE 5.3 的不一样)
sc create JAVASRVNAME binPath= "\"D:\Program Files\ZendServerCE_PHP52\ZendServer\bin\JavaServer.exe\" \"D:\Program Files\Java\jre6\bin\client\jvm.dll\" -Dzend.javamw.log=0 -Dzend.javamw.logfile=\"D:\Program Files\ZendServerCE_PHP52\ZendServer\logs\javamw.log\" -Dzend.javamw.threads=20 -Dzend.javamw
.port=10001 \"D:\Program Files\ZendServerCE_PHP52\ZendServer\etc\java_bridge_server.ini\"" start= demand
注意,里面的jvm.dll的路径,那是JRE的路径,如果它与系统实际不符,就要修改。
这样就OK了。当然,如果按默认端口,这个时候的5.2/5.3两者的端口是冲突的(都在用Apache前台80/Apache后台管理10081 /Java Bridge Server 10000),所以5.2/5.3两者是不能同时启动的,如果想同时启动,请修改上述三个端口。
[ 此帖被XChinux在2011-01-11 10:18重新编辑 ]