如何编译PHP源代码

80酷酷网    80kuku.com

  >

综述:我们将要介绍Zend公司的最新工具ZendEncoder,利用这个工具,我们就可以实现编译PHP,从而达到保护PHP源代码的目的。

如何安装ZendEncode?

一、先去www.zend.com去注册一个用户https://www.zend.com/add_user.php

二、在你的注册信箱里得到登录名和密码后,从https://www.zend.com/login.php登录,如果成功则会自动跳转回Zend的首页,这时点击首页右上边的导航栏里的Store,然后再点击EnterpriseProducts,再点击ZendEncoderUnlimited,然后再点击右边的Price:$2400下面有一个Testdriveavailable的链接,进去后再点击右侧下方的Testdriveavailable按钮,这时候我们会看到Zend的相关产品,选择ZendEncoderUnlimitedTestDrive右边的GetIt(播放按钮)

三、看到Download后,点击Step2:RequestProductLicense,这时候Zend需要我们提供一个hostid号,这个是标识你的电脑的唯一标识符,你可以点击右边的HowdoIfindmyhostID链接,去下载一个查看标识符的软件,如果你是WINDOWS用户,可输入以下命令得到你的网卡内部号:

ipconfig/all

然后会得到有这么一串字符:PhysicalAddress......:00-80-C8-DB-FC-39

这样把-号去掉,得到你的HOSTID号为0080C8DBFC39,然后把这段字符拷贝到EnterhostID:的输入框里,点击Request这个链接,然后系统会把你这台机器的许可协议发送到你的信箱里。

四、等一段时间后,在你的信箱里可以看到标题为Zendlicensescreated的一封信,去http://www.zend.com/store/pickup.php这个地方取许可协议,这个时候你的机器上已经存在着Zend那个网站的COOKIE。所以进去后选Step3:DownloadProductLicense,在边上会有黑体写的DownloadLicense,点击下载名叫zend_encoder.dat的许可协议,然后再选择Step1:DownloadtheZendEncoderUnlimitedTestDrivev.1.1.0,选择你需要的版本,我是用WindowsNT/2K(forPHP4.0.3/4.0.4)的,又是一封长长的ZendEncoder?TestDriveLicenseAgreement(许可协议书),按下"IACCEPT"按钮后开始下载ZendEncoderUnlimited程序。

如何配置ZendEncode?

一、解压ZendEncoderUnlimited-TestDrive-1[1].1.0-PHP_4.0.3-Windows-i386.zip到c:\programfiles\ZendEncoderUnlimited目录,然后把zend_encoder.dat这个文件拷到c:\programfiles\Zend目录下,运行c:\programfiles\ZendEncoderUnlimited目录下的install_license.reg注册表,成功后你就可以用zendenc.exe这个程序来编译php源文件了,格式如下:zendenc源文件名编译后文件名(还有许多参数可自己查看帮助)

二、现在需要从http://www.zend.com/store/free_download.php?pid=13这里下载ZendOptimizer?v.1.0.0,然后将下载后的ZendOptimizer-1[1].0.0-PHP_4.0.4-Windows-i386.zip解压到C:\ProgramFiles\ZendOptimizer目录下。

三、修改php.ini文件,增加两行

zend_optimizer.optimization_level=15
zend_extension_ts="c:\programfiles\zendoptimizer\zendoptimizer.dll"
四、重启你的WEB SERVER,然后用PHPINFO输出看一下,会有这么一段:

ThisprogrammakesuseoftheZendscriptinglanguageengine:
ZendEnginev1.0.4,Copyright(c)1998-2000ZendTechnologies
withZendOptimizerv1.0.0,Copyright(c)1998-2000,byZendTechnologies
记住,有最后一行withZendOptimizerv1.0.0,Copyright(c)1998-2000,byZendTechnologies的才表示你的ZendOptimizer安装成功了

如何使用ZendEncoder?

写一个测试的phpinfo.php文件:

<?
phpinfo();
?>
然后用zendencphpinfo.phpphpinfoencode.php

得到一个编译过的phpinfoencode.php文件,打开看里面的代码已经变成这样了:

Zend20001120011139265x??2??~佒?ス箷z?)E惺?元5韺爕穯圽R怮悪棖)?a虲P?纈爂li`if
錽?A毱LF?n?l&r閅殮?4?21a?6舶446┐児%5B?唴?蔯?
在浏览器里执行这个phpinfoencode.php文件,发现头部多了GeneratedbyaTRIALVERSIONoftheZendEncoder(TM)这一行。

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: