`
晨星★~雨泪
  • 浏览: 446897 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

centos 5.0 和plesk上 安装Zend Optimizer的方法

阅读更多

在centos 5.0 和plesk上 安装Zend Optimizer的方法

本方法是针对centos 5.0,也适合相应的其他linux系统.(支持Plesk for Linux 8.2)

------------------------------------------------------

方法1,使用ZendOptimizer 官方自动安装包

可使用下边的地址下载ZendOptimizer 3.3 for Linux
http://www.swsoft.com.cn/downloads/Plesk/Linux/plesklinux82/ZendOptimizer-3.3.0-linux-glibc21-i386.tar.gz

或者登陆Zend.com的官方网站下载.

将这个安装文件解压缩后,运行里边的install程序
安装程序首先提示是否许可,继续后将询问Zend安装路径
这里使用默认的/usr/local/Zend即可
随后安装程序询问现有php.ini的路径
此时输入 /etc 这个目录即可
完成安装后,安装程序还会询问Apache的控制程序在什么位置
使用默认的/usr/sbin/apachectl
安装程序会自动重启apache,安装完毕

此时,运行php -m 验证一下php是否成功配置好了,会发现php报错,不能运行
[root@plesklinux820 ~]# php -m
PHP Fatal error: [ionCube Loader] The Loader must appear as the first entry in the php.ini file in Unknown on line 0
[root@plesklinux820 ~]#

出现这个错误的原因是:Plesk使用了Ioncube作为加密程序,而不是Zendencoder
为了保证plesk能够运行,需要把ioncube loader模块加载到php中
但是ioncube loader和zend optimizer同时加载的时候,有一个加载顺序关系
在php.ini配置文件中,有关ioncube loader的配置项目必须写在前边
有关zend optimizer的配置要写在后边,否则运行php就会报错
但是,zend optimizer的安装程序可不区分前后,所以安装完毕后就报错了

解决方法:
编辑 /etc/php.ini ,找到最后几行,如下:
[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.0
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.0
zend_optimizer.version=3.3.0
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

把这几行复制出来,然后从/etc/php.ini文件中删除掉。
保存php.ini文件,退出编辑器。

现在编辑/etc/php.d/ioncube-loader.ini
这个文件里边默认就一行配置:
zend_extension=/usr/lib/php4/php_ioncube_loader_lin_4.3.so

把刚才复制出来的有关zend的配置,帖到ioncube loader的后边
即,最终的/etc/php.d/ioncube-loader.ini配置文件应该是如下的样子:

[root@plesklinux820 ~]# cat /etc/php.d/ioncube-loader.ini
zend_extension=/usr/lib/php4/php_ioncube_loader_lin_4.3.so
[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.0
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.0
zend_optimizer.version=3.3.0
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so
[root@plesklinux820 ~]#

现在再去运行 php -m 命令,发现就可以运行了!
[root@plesklinux820 ~]# php -m
[PHP Modules]
...
ionCube Loader
...
Zend Optimizer
...
[Zend Modules]
Zend Extension Manager
Zend Optimizer
the ionCube PHP Loader
[root@plesklinux820 ~]#

这个命令执行后返回的模块清单很长,这里不一一列出了
但是从中能找到ioncube loader和zend optimizer
表示安装完全成功

------------------------------------------------------

方法2:从前边介绍的方法1中,既然已经知道了zend optimizer和ioncube loader的冲突问题
我们直接把zend optimizer的二进制文件打包复制过来,直接修改/etc/php.d/ioncube-loader.ini
问题就解决了,就不用去运行zend的自动安装程序了

从这里可以下载Zend Optimizer 3.3.0的二进制包:
http://www.swsoft.com.cn/downloads/Plesk/Linux/plesklinux82/ZendOptimizer-bin-3.3.0.tar.gz

下载后,将其解压缩并复制到/usr/local/Zend位置下
然后编辑/etc/php.d/ioncube-loader.ini文件
在文件末尾增加如下几行的配置:
[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.0
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.0
zend_optimizer.version=3.3.0
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

保存配置文件退出,安装完成。
现在用php -m验证一下是否运行即可。

补充
http://fedoraproject.org/wiki/YuanYijun/draft/ZendInSELinux

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics