ICDSoft空间对Zend Optimizer的支持情况介绍

最近用的网页程序,有使用到Zend Optimizer,结果放到ICDSoft空间后,发现并不支持,因此就此咨询了客服,答复默认不支持,但可以进行配置(可直接看本文最后的设置方法)。为此我也再查询了一些资料,把信息汇总在此,希望对大家有所帮助。

Zend Optimizer的最新版本为3.3.3,最高只支持至PHP5.2,且Zend官方已不再进行更新,在PHP5.3环境下,只能使用ZendGuardLoader,但由于ZendGuardLoader只支持使用Zend Guard 5.5以后加密的代码,所以如果网页程序没法升级的话,只能变通使用PHP5.2了。ICDSoft的解决办法也是基于这个方法。

ICDSoft空间目前同时支持PHP5.2和PHP5.3,默认是采用PHP5.3进行解析,可通过配置.htaccess文件,设置为使用PHP5.2进行解析:

AddHandler application/x-httpd-php52 .php

为了在ICDSoft上加载Zend Optimizer,还需修改php.ini文件,添加如下配置:

;enable Zend Optimizer [for PHP 5.2]
zend_optimizer.optimization_level=0
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

进行上面两步调整后,网站程序就跑在PHP5.2+Zend Optimizer环境下了。

由于PHP5.2迟早要退出历史舞台,最好还是催促程序作者更新程序采用Zend Guard进行加密,当程序调整为PHP5.3+Zend Guard之后,只要移去.htaccess中的配置,并替换php.ini文件中Zend Optimizer的配置为ZendGuardLoader即可:

;enable Zend Guard [for PHP 5.3]
zend_extension = /usr/local/Zend/ZendGuardLoader.so