首页 > 系统 > windows > 正文

PHP 5.3 Zend Optimizer 已经被全新的 Zend Guard Loader 取代
2014-09-23 17:08:53   来源:   评论:0 点击: 收藏

1 下载 Zend Guard Loader 压缩包。(官方下载地址:http: www zend com en products guard downloads)2 解压并提取 ZendGuardL

1. 下载 Zend Guard Loader 压缩包。
(官方下载地址:http://www.zend.com/en/products/guard/downloads)

2. 解压并提取 ZendGuardLoader.so(Linux)或 ZendLoader.dll(Windows),对应你的PHP版本。
 
3. 在你的 php.ini 文件添加下面一行,用来加载 Zend Guard Loader:
    Linux 和 Mac OS X: zend_extension = 完整路径/ZendGuardLoader.so
    Windows(非线程安全):  zend_extension = 完整路径/ZendLoader.dll
 
4. 在 php.ini 额外新增一行,启用 Zend Guard Loader:
    zend_loader.enable = 1
 
5. 可选:可以在 php.ini 文件添加以下行到 Zend Guard Loader 配置位置:
    ;禁用许可证检查(为了性能的原因)
    zend_loader.disable_licensing = 0
    ;让 Zend Guard Loader 支持混淆级别。级别在 Zend Guard 的官方详细文档。 0 - 不启用混淆
    zend_loader.obfuscation_level_support = 3
    ;从这个路径寻找Zend产品授权的产品许可证。欲了解更多有关如何创建一个许可证文件的信息,请参阅 Zend Guard 用户指南.
    zend_loader.license_path =
 
6. 如果您使用 Zend debugger,请确保加载 Zend guard Loader。
 
7. 如果您使用 ioncube loader,请务必在它之前加载 Zend guard Loader。
 
8. 重新启动Web服务器。
 
=============================================================
 
Zend Optimizer3.3 优化配置指南
 
Zend Optimizer是由PHP核心引擎“Zend”创建者Zend技术公司所开的免费PHP优化软件。据Zend公司透露使用这个软件某些情况下至少可以提高性能30%以上!这么好的免费大餐当然要用,现在我们来谈谈如何配置这套软件。
       ZendOptimizer的安装是傻瓜化的,安装向导会自动根据你的选择来修改php.ini帮助你启动这个引擎。下面我们来介绍下ZendOptimizer的配置选项,帮助你最大化自定义合理的配置。下边是我所用的配置文件,看不懂也不要着急,看完本文你就会完全明白。
 
[Zend]
zend_optimizer.optimization_level=1023
zend_optimizer.encoder_loader=0
zend_extension_ts="C:Program FilesZendlibZendOptimizer.dll"
 

现在我们来介绍下上边这个配置文件的含义:
zend_optimizer.optimization_level 《== 优化程度,这里定义启动多少个优化过程。
zend_optimizer.encoder_loader    《== 是否允许处理由Zend Encoder加密的PHP文件。
zend_extension_ts                        《== 优化器所在目录。
 
 优化过程 zend_optimizer.optimization_level 详细解释
       这里最为重点的部分,仔细看!ZendOpt总共有10个优化过程,从理论上说开的越多性能越好。当然,理论和实际永远都存在着差距。优化过程开启的越多对性能消耗也相对也越大,ZendOpt的10个优化过程并不相同也就是说效果不是平均的。Zend公司定义的最高值(High模式)为15,这里15指的是开启1-4号优化过程。当然,很多朋友并不满足于此,毕竟最高也只开启4个优化过程连总数的一半都没有。各个优化过程的对应的数字代码(值)如下:
       不使用      0  <= 如果这样不如不装,还能节约点内存说!
       优化过程1(PASS1)  1
       优化过程2(PASS2)  2
       优化过程3(PASS3)  4
       优化过程4(PASS4)  8
       优化过程5(PASS5)  16
       优化过程6(PASS6)  32
       优化过程7(PASS7)  64
       优化过程8(PASS8)  128
       优化过程9(PASS9)  256
       优化过程10(PASS10)  512
      以何种方式开启优化过程是通过这些数字代码(值)相加所得的和作为此参数的参数值来控制的。如我的配置文件中zend_optimizer.optimization_level = 1023 ,这里的1023是优化过程1到优化过程10全部数字代码(值)相加得到的和,表示开启全部10个优化过程。刚才所提到的Zend公司定义的High模式值为15,15表示同时开启优化过程1-4。
       加密代码支持 zend_optimizer.encoder_loader 详细解释
       对于这个参数,我想如果没有看过Zend Opt FAQ文档的朋友大多数并不知道。这个参数用来告诉ZendOptimizer是否去支持被Zend Encoder加密过的代码。默认情况下ZendOpt将支持加密过的代码。如果不使用被加密过的代码我推荐你关闭此选项。这个功能牵扯到解包反码的过程,会导致系统负荷的加重。
       这个参数的值只有两个 0 关闭, 1 开启。默认为1,推荐设置为0。
       模块定位 zend_extension_ts 无需解释
       这是最简单的地方,参数就是Zend Optimizer模块在硬盘上的安装路径。
 
=================================================
 
PHP5.3下的安装Zend Optimizer
 
最近配置新版本的php环境,由于MYSQL和PHP版本都需要更新,服务器上是用的目前最新的php 5.3.6,然后去Zend下载的ZendOptimizer的最新版本3.3.3,显而易见安装后ZendOptimizer没加载
 
原因在于ZendOptimizer 3.3.3只支持php 5.2.x,如果php 5.3.x就需要用ZendGuardLoader 5.5这个产品,换句话说就是ZendOptimizer今后zend官方不更新了。 
那就装ZendGuardLoader,但是ZendGuardLoader 5.5只能解Zend Guard 5.5加密的代码,老版本的Zend Guard加密的代码无能无力。如果你要用到zend的产品是用Zend Guard5.5以上的版本加密的,恭喜你直接装ZendGuardLoader即可,但是如果你要用的那产品的开发商还没这么前卫的话,就继续往下读吧。 
目前这个年代IIS里用的PHP都是用fastcgi方式了,fastcgi给大家灌输的概念是要用非线程安全(nts)版本的PHP。如果ZendOptimizer 3.3.3加php 5.2.x的nts版的话,又挂了,因为如果要用ZendOptimizer需要用线程安全的版本。 
照目前来说,符合条件的最新的就是php-5.2.17-Win32-VC6-x86,而它又分msi和zip两个。按照习惯用的msi,但装上后php后页面上fastcgi报错(还未装zend就错),php目录下面放php.ini、windows目录下放php.ini、两个目录下都放php.ini这3中情况都试了都同样的出错…… 
然后卸载了php的msi安装版,换上了zip版,php目录下面不放php.ini、windows目录下放php.ini,phpinfo()终于出来了“with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies” 
随后另在一台服务器上IIS6+fastcgi的php 5.2.17线程安全zip版装ZendOptimizer同样成功。证明虽然不能说ZendOptimizer在php 5.2.x里只能如此安装,但至少如此安装绝对能配通。
关于ZendOptimize安装,上官方下载ZendGuardLoader-php-5.3-Windows 
下载后将相应的ZendLoader.dll文件进行加放到php.ini上即可 
详细方法见 
Zend Guard Loader installation instructions 
——————————————- 
1. Extract the Zend Loader package. 
2. Locate and extract the ZendGuardLoader.so (Linux) or ZendLoader.dll (Windows) that corresponds to your php version. 
3. Add the following line to your php.ini file for loading the ZendGuardLoader: 
   Linux and Mac OS X:      zend_extension=<full_path_to_ZendGuardLoader.so> 
   Windows non-thread safe: zend_extension=<full_path_to_ZendLoader.dll> 
4. Add an aditional line to your php.ini for enabling ZendGuardLoader 
  ; Enables loading encoded scripts. The default value is On 
  zend_loader.enable=1 
5. Optional: following lines can be added your php.ini file for ZendGuardLoader configuration: 
   ; Disable license checks (for performance reasons) 
     zend_loader.disable_licensing=0 
   ; The Obfuscation level supported by Zend Guard Loader. The levels are detailed in the official Zend Guard Documentation. 0 – no obfuscation is enabled 
     zend_loader.obfuscation_level_support=3 
   ; Path to where licensed Zend products should look for the product license. For more information on how to create a license file, see the Zend Guard User Guide 
     zend_loader.license_path= 
6. If you use Zend debugger as well, please make sure to load it after the Zend guard Loader 
7. If you use ioncube loader, please make sure to load it before Zend guard Loader 
8. Restart your Web server.
 
==================================================
 
windows版本
 
c. PHP5.3.0(注意:一定要下VC9 Non Thread Safe版本,可获得性能和可靠性双提升)
 
d. 针对IIS6的FastCGI组件(自从PHP5.3.0开始,由于一直以来PHP+ISAPI的稳定性有问题,在IIS平台上PHP取消了ISAPI模块的支持,只支持FastCGI运行方式,在IIS官方网站下载)
 
=========================================================
 
快速配置IIS 6.0 php fastcgi +Zend Optimizer、wincache、eAccelerator
 
首先下载php包 fastcgi模块
无须Zend Optimizer 请下载非线程安全版
http://windows.php.net/downloads/releases/archives/php-5.2.14-nts-Win32-VC6-x86.zip
需要Zend Optimizer 请下载线程安全版PHP
http://windows.php.net/downloads/releases/archives/php-5.2.14-Win32-VC6-x86.zip
fastcgi 模块下载 下载x86版
http://www.iis.net/download/fastcgi
或者
http://go.microsoft.com/?linkid=9707432
注:微软的说法是 fastcgi使用非线程安全版PHP执行效率会更高,也推荐的是非线程安全版。
但是很多商业程序是用zend加密了的,因此按照你的实际情况来下载php包。
把下载的PHP包解压缩 然后复制到C盘 重命名文件夹为PHP 给予iis_wpg读取权限即可
然后打开PHP文件夹 找到php.ini-dist 复制后从命名为php.ini 位置为c:\php
建立session文件 给予iis_wpg写权限。例如我的是C:\phptmp\session
打开php.ini 找到 session.save_path 去掉;修改为session文件夹路径
session.save_path = "C:\phptmp\session"
找到extension_dir 修改如下:
extension_dir = "C:\php\ext"
修改运行fastcgi模块参数
cgi.force_redirect = 0
cgi.fix_pathinfo= 1
fastcgi.impersonate = 1
打开PHP扩展模块,去掉;即可打开 例如
按照你的实际应用环境打开
;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_fdf.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_ifx.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
extension=php_mbstring.dll
;extension=php_exif.dll
extension=php_mcrypt.dll
extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_msql.dll
;extension=php_mssql.dll
extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_openssl.dll
;extension=php_pdo.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_oci8.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
;extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
;extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll

相关热词搜索:PHP Zend Optimizer Guard

上一篇:在FlashFXP中设置数据传输模式为PORT(主动模式)的两种方法
下一篇:怎样删除系统服务项?