Zend Guard使用指南及问题处理


Posted in PHP onJanuary 07, 2015

Zend Guard是目前市面上最成熟的PHP源码加密产品了。

刚好需要对自己的产品进行加密,折腾了一晚上,终于搞定,将碰到的问题及解决方法记录下来,方便日后需要,也可以帮助其他人。
我使用的是Wampserver,其中php的版本是5.3.10。

Zend Guard的安装及破解

点击下载Zend Guard5.5.0,下载完成后,请自行傻瓜化安装

这里需要注意以下几点

1、本KEY的有效时间为2010年7月10号,因此激活时请将自己电脑系统时间调整至这个时间以前

2、本KEY激活的为试用版,加密过的文件只有14天有效时间,因此在加密文件时,请将自己电脑系统时间向后调整N年,比如2099-12-31

3、下载授权文件[zend_guard授权文件.zip],解压得到zend_guard.zl,即为激活用的文件

4、打开Zend Guard 5.5.0,[Help]->[Register]->[Search for a license file on my disk],选择文件激活即可。

如何使用Zend Guard进行加密

1、打开Zend Guard 5.5.0,[File]->[New]->[Zend Guard Project],新建项目

2、在弹窗的窗口,前3项随便填吧,最后一项是加密后文件的保存位置,然后[Next];

3、本步骤是选择要加密的文件,可以为单个文件[Add File]和整个文件夹[Add Folder],然后[Next]

4、接下来是选择PHP版本[与你服务器上PHP的版本相对照],这里很重要,版本不对会出错,[Finish]完成项目的创建

5、在Zend Guard左侧的Guard Explorer中,可以看到你新建的项目了,鼠标选中后,右键[Encode Project],完成

Zend Guard Run-time support missing问题的解决

虽然现在可以成功加密php源码了,但是当执行脚本的时候,会发现不能正常执行,会显示如下信息

Zend Guard Run-time support missing!
One more more files on this web site were encoded by ZendGuard and the required run-time support is not installed orproperly configured.
......

原来,加密后的php代码需要ZendGuardLoader模块才能正常运行。
因为我的php版本是5.3.10的,所以我这里只提供了ZendGuardLoader-php-5.3-Windows,如果是其他版本的php,请自行百度。
点击下载ZendGuardLoader-php-5.3-Windows
下载好后解压压缩包,找到目录下的 ZendLoader.dll 文件,将它放到你的php目录下ext下,再编辑php.ini文件,添加一段代码(如):

[Zend.loader]

zend_loader.enable=1

zend_loader.disable_licensing=1

zend_loader.obfuscation_level_support=3

zend_loader.license_path=

zend_extension="你的PHP安装目录\ext\ZendLoader.dll"

重启wampserver

运气好的话,会发现可以成长执行了,运气不好的话,还是会发现以上错误。

这里我们已经安装了zend guard loader了,为什么还是无法执行zend加密后的php脚本呢?

通过查看输出phpinfo()信息,我发现有这么几行信息:

PHP Extension 20090626

Zend Extension 220090626

Zend Extension Build API220090626,TS,VC9

请注意,其中的TS是thread safety的简写(即线程安全)

一时也找不出原因,索性直接打开zend guard官网进行搜索,然后就解决了。

原来,zend guard loader只支持NTS的版本,意味着如果你的php版本是TS的话,就没法使用zend guard loader了,如果你想查看自己的php是ts还是nts的,只需要输出phpinfo,然后搜索下:Thread Safety,disabled对应nts版本,否则为ts。

因此,终极解决办法就是,下载个php NTS版本进行安装即可。

PHP 相关文章推荐
从MySQL数据库表中取出随机数据的代码
Sep 05 PHP
php 图片上传类代码
Jul 17 PHP
php中理解print EOT分界符和echo EOT的用法区别小结
Feb 21 PHP
破解图片防盗链的代码(asp/php)测试通过
Jul 02 PHP
php二分查找二种实现示例
Mar 12 PHP
destoon整合ucenter后注册页面不跳转的解决方法
Jun 21 PHP
如何让thinkphp在模型中自动完成session赋值小教程
Sep 05 PHP
在win7中搭建Linux+PHP 开发环境
Oct 08 PHP
php读取flash文件高宽帧数背景颜色的方法
Jan 06 PHP
一个简单的php MVC留言本实例代码(必看篇)
Sep 22 PHP
PHP实现小偷程序实例
Oct 31 PHP
PHP创建对象的六种方式实例总结
Jun 27 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
Jan 07 #PHP
php模拟用户自动在qq空间发表文章的方法
Jan 07 #PHP
PHP中使用CURL获取页面title例子
Jan 07 #PHP
PHP中调用SVN命令更新网站方法
Jan 07 #PHP
PHP PDO fetch 模式各种参数的输出结果一览
Jan 07 #PHP
PHP中使用php5-ffmpeg撷取视频图片实例
Jan 07 #PHP
PHP和Shell实现检查SAMBA与NFS Server是否存在
Jan 07 #PHP
You might like
咖啡语言
2021/03/03 咖啡文化
检查url链接是否已经有参数的php代码 添加 ? 或 &
2010/02/09 PHP
PHP 截取字符串函数整理(支持gb2312和utf-8)
2010/02/16 PHP
phpmyadmin 3.4 空密码登录的实现方法
2010/05/29 PHP
《PHP编程最快明白》第三讲:php数组
2010/11/01 PHP
详谈php静态方法及普通方法的区别
2016/10/04 PHP
微信公众号OAuth2.0网页授权问题浅析
2017/01/21 PHP
php+ajax实现异步上传文件或图片功能
2017/07/18 PHP
phpstorm 配置xdebug的示例代码
2019/03/31 PHP
jQuery 跨域访问问题解决方法
2009/12/02 Javascript
JavaScript Event学习第七章 事件属性
2010/02/07 Javascript
window.navigate 与 window.location.href 的使用区别介绍
2013/09/21 Javascript
js的匿名函数使用介绍
2013/12/11 Javascript
用js代码改变单选框选中状态的简单实例
2013/12/18 Javascript
javascript检查浏览器是否已经启用XX功能
2015/07/10 Javascript
详解webpack+gulp实现自动构建部署
2017/06/29 Javascript
jQuery实现弹窗下底部页面禁止滑动效果
2017/12/19 jQuery
详解angular2.x创建项目入门指令
2018/10/11 Javascript
解决vue v-for src 图片路径问题 404
2019/11/12 Javascript
Vue实现验证码功能
2019/12/03 Javascript
vue中的.$mount('#app')手动挂载操作
2020/09/02 Javascript
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
Python判断telnet通不通的实例
2019/01/26 Python
PyQT实现菜单中的复制,全选和清空的功能的方法
2019/06/17 Python
python 含子图的gif生成时内存溢出的方法
2019/07/07 Python
pytorch 获取层权重,对特定层注入hook, 提取中间层输出的方法
2019/08/17 Python
python数据类型可变不可变知识点总结
2020/03/06 Python
详解python datetime模块
2020/08/17 Python
CSS3转换功能transform主要属性值分析及实现分享
2012/05/06 HTML / CSS
谈一谈HTML5本地存储技术
2016/03/02 HTML / CSS
详解快速开发基于 HTML5 网络拓扑图应用
2018/01/08 HTML / CSS
系统管理员的职责包括那些?管理的对象是什么?
2016/09/20 面试题
体现团队精神的口号
2014/06/06 职场文书
银行授权委托书格式
2014/10/10 职场文书
起诉书范文
2015/05/20 职场文书
JS前端轻量fabric.js系列物体基类
2022/08/05 Javascript