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://www.cnblogs.com/hongfei/p/3587399.html
http://www.bkjia.com/PHPjc/738499.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/738499.htmlTechArticleZend Guard是目前市面上最成熟的PHP源碼加密產品了。 剛好需要對自己的產品進行加密,折騰了一晚上,終於搞定,將碰到的問題及解決方案...