日志
Windows下同时安装Zend Server CE for PHP 5.3和5.2
2011-06-12 12:32
最近将Windows下的PHP工作环境切换到了Zend Server CEfor Apache/PHP5.3上了,因为这个PHP是使用VC9(VC2008)编译的,我也好写扩展(Qt开发在Windows下使用的是VC2008),并且其最新版本也开始支持Zend Guard Loader(对应的Zend Guard也支持PHP5.3了),这个功能对于开发商业应用来说,十分重要。但以前一些PHP老项目还在用,并且关键加密过的代码不能在Zend Server forApache/PHP 5.3下运行,这就需要机器上能同时安装Zend Server CE for Apache/PHP5.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 ServerCE 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服务 sccreate ZendServerCEPHP5_2 binPath= "\"D:\ProgramFiles\ZendServerCE_PHP52\Apache2\bin\httpd.exe\" -k runservice" start=demand 6、注册Java Bridge Server服务(幸好与Zend Server CE 5.3 的不一样) sccreate JAVASRVNAME binPath= "\"D:\ProgramFiles\ZendServerCE_PHP52\ZendServer\bin\JavaServer.exe\" \"D:\ProgramFiles\Java\jre6\bin\client\jvm.dll\" -Dzend.javamw.log=0-Dzend.javamw.logfile=\"D:\ProgramFiles\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两者是不能同时启动的,如果想同时启动,请修改上述三个端口。 |