博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux安装Zend Guard 和 ioncube
阅读量:6256 次
发布时间:2019-06-22

本文共 2752 字,大约阅读时间需要 9 分钟。

hot3.png

如果你想让你的PHP环境同时支持ioncube和Zend Guard,这个非常容易实现,本文主要讲解如何在Linux服务器上安装Zend Guard Loader和ionCube Loader。

本文测试的环境是是PHP5.3 和 64位的Linux CentOS系统,你可以根据实际的环境进行参考本文,由于PHP5.3以后放弃Zend Optimizer,可以查看。

通过本文的教程,你可以实现如下的结果。

phpinfo() 头部显示ionCube PHP Loader和Zend Guard Loader,表明安装成功。

phpinfo() 安装ionCube成功,会显示ionCube Loader 模块。

phpinfo() 安装Zend Guard成功,会显示Zend Guard Loader 模块。

PHP安装Zend Guard Loader

请通过以下命令进行安装:

[root Zend]# wget http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz

[root Zend]# tar -zxvf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
[root ioncube]# vi /etc/php.ini
[Zend Guard Loader]

zend_extension=/usr/local/lib/Zend/ZendGuardLoader.so

zend_loader.enable=1
zend_loader.disable_licensing=0
zend_loader.obfuscation_level_support=3

注意:如果你的Linux服务器是32位的,使用后面的命令进行下载 ZendGuardLoader。

wget http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz

如果是PHP其他版本,可以到 选择对应的文件。

PHP安装ioncube Loader

[root ioncube]# http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

[root ioncube]# tar -zxvf ioncube_loaders_lin_x86-64.tar.gz

[Ioncube Loader]

zend_extension=/usr/local/lib/ioncube/ioncube_loader_lin_5.3.so

如果是PHP其他版本或者32位的Linux服务器,可以到 选择对应的文件。

解决 PHP 环境未加载ionCube Loader

如果通过phpinfo() 并没有加载ionCube Loader,可以通过以下命令测试:

[root ioncube]# php -v

PHP Fatal error: [ionCube Loader] The Loader must appear as the first entry in the php.ini file in Unknown on line 0

解决方法是把ZendGuardLoader.so和ioncube_loader_lin_5.3.so放在php.ini的顶部。

[PHP]

zend_extension=/usr/local/lib/ioncube/ioncube_loader_lin_5.3.so

zend_extension=/usr/local/lib/Zend/ZendGuardLoader.so
zend_loader.enable=1
zend_loader.disable_licensing=0
zend_loader.obfuscation_level_support=3

解决 PHP Run-time support missing(未加载ZendGuard Loader)

这个错误非常奇怪,通过php -v可以获取到ZendGuard Loader,但是phpinfo()却加载不上。

[root ~]# php -v

PHP 5.3.3 (cli) (built: Jan 11 2012 19:53:01)

Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies with the ionCube PHP Loader v4.4.3, Copyright (c) 2002-2013, by ionCube Ltd., and with Zend Guard Loader v3.3, Copyright (c) 1998-2010, by Zend Technologies

注意这个错误,PHP并不会直接报错,而是要通过Apache或者Nginx的 error_log文件获取错误信息。如果你的phpinfo() 未加载ZendGuard Loader,可能在/var/log/httpd/error_log文件中可以看到这一行错误:

[Mon Oct 07 08:58:52 2013] [notice] caught SIGTERM, shutting down

Failed loading /usr/local/lib/Zend/ZendGuardLoader.so: /usr/local/lib/Zend/ZendGuardLoader.so: cannot enable executable stack as shared object requires: Permission denied

这个错误的原因是因为安全问题,Linux的SELinux处于开启状态,将其关闭即可解决问题。

[root@localhost~]# echo 0 >/selinux/enforce

[root@localhost~]# service httpd restart

如果你对本文的方法有什么见解,请一定在评论中留言。

另外,本人提供ionCube的加密服务,可以查看

本文的安装方法主要参考了以下的2篇技术文章:

查看更多:

转载于:https://my.oschina.net/u/256646/blog/174211

你可能感兴趣的文章
使用SQLServer Audit来监控触发器的启用、禁用情况(转载)
查看>>
OFBIZ Party Relationship 关系图
查看>>
获取Cookie(未测试)
查看>>
SQL Server 2008的备份和日志收缩
查看>>
注意linux bash缓存
查看>>
Html 常用事件列表
查看>>
UITextView 实现placeholder的方法
查看>>
Maven入门实战笔记-11节[1-5]
查看>>
python的多重继承
查看>>
索引 - 索引排序顺序
查看>>
MoSQL:简化MongoDB与PostgreSQL之间的同步[转]
查看>>
source insight中文显示和处理
查看>>
spring3.1, hibernate4.1 配置备份,struts2.2.1,sitemesh 2.4.2
查看>>
python字符串格式化输出的方式
查看>>
buffer busy waits等待事件
查看>>
MySQL版本之分:Community Server、Embedded Server、Enterprise Server
查看>>
JVM及遗传算法,转摘牛人牛文
查看>>
C#用DataTable实现Group by数据统计
查看>>
iframe如何刷新的三种解决方案
查看>>
每日英语:Fewer Foreigners Eye US Graduate Science Programs
查看>>