PHP:使用Zend對源碼加密、Zend Guard安裝以及Zend Guard Run-time support missing的解決方法


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版本進行安裝即可。

參考資料

ZendGuard 5.5.0 破解方法+注冊文件KEY下載
Windows下PHP(Thread Safe與Non Thread Safe)版本說明


作者:曾是土木人http://www.cnblogs.com/hongfei

新浪微博:http://weibo.com/cstmr

原文地址:http://www.cnblogs.com/hongfei/p/3587399.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM