您好,登錄后才能下訂單哦!
如何正確的使用Zend Guard?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。
Zend Guard是目前市面上最成熟的PHP源碼加密產(chǎn)品了。
剛好需要對(duì)自己的產(chǎn)品進(jìn)行加密,折騰了一晚上,終于搞定,將碰到的問(wèn)題及解決方法記錄下來(lái),方便日后需要,也可以幫助其他人。
我使用的是Wampserver,其中php的版本是5.3.10。
Zend Guard的安裝及破解
點(diǎn)擊下載Zend Guard5.5.0,下載完成后,請(qǐng)自行傻瓜化安裝
這里需要注意以下幾點(diǎn):
1、本KEY的有效時(shí)間為2010年7月10號(hào),因此激活時(shí)請(qǐng)將自己電腦系統(tǒng)時(shí)間調(diào)整至這個(gè)時(shí)間以前
2、本KEY激活的為試用版,加密過(guò)的文件只有14天有效時(shí)間,因此在加密文件時(shí),請(qǐng)將自己電腦系統(tǒng)時(shí)間向后調(diào)整N年,比如2099-12-31
3、下載授權(quán)文件[zend_guard授權(quán)文件.zip],解壓得到zend_guard.zl,即為激活用的文件
4、打開(kāi)Zend Guard 5.5.0,[Help]->[Register]->[Search for a license file on my disk],選擇文件激活即可。
如何使用Zend Guard進(jìn)行加密?
1、打開(kāi)Zend Guard 5.5.0,[File]->[New]->[Zend Guard Project],新建項(xiàng)目
2、在彈窗的窗口,前3項(xiàng)隨便填吧,最后一項(xiàng)是加密后文件的保存位置,然后[Next];
3、本步驟是選擇要加密的文件,可以為單個(gè)文件[Add File]和整個(gè)文件夾[Add Folder],然后[Next]
4、接下來(lái)是選擇PHP版本[與你服務(wù)器上PHP的版本相對(duì)照],這里很重要,版本不對(duì)會(huì)出錯(cuò),[Finish]完成項(xiàng)目的創(chuàng)建
5、在Zend Guard左側(cè)的Guard Explorer中,可以看到你新建的項(xiàng)目了,鼠標(biāo)選中后,右鍵[Encode Project],完成
Zend Guard Run-time support missing問(wèn)題的解決
雖然現(xiàn)在可以成功加密php源碼了,但是當(dāng)執(zhí)行腳本的時(shí)候,會(huì)發(fā)現(xiàn)不能正常執(zhí)行,會(huì)顯示如下信息
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.
......
原來(lái),加密后的php代碼需要ZendGuardLoader模塊才能正常運(yùn)行。
因?yàn)槲业膒hp版本是5.3.10的,所以我這里只提供了ZendGuardLoader-php-5.3-Windows,如果是其他版本的php,請(qǐng)自行百度。
點(diǎn)擊下載ZendGuardLoader-php-5.3-Windows
下載好后解壓壓縮包,找到目錄下的 ZendLoader.dll 文件,將它放到你的php目錄下ext下,再編輯php.ini文件,添加一段代碼(如):
復(fù)制代碼 代碼如下:
[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
運(yùn)氣好的話(huà),會(huì)發(fā)現(xiàn)可以成長(zhǎng)執(zhí)行了,運(yùn)氣不好的話(huà),還是會(huì)發(fā)現(xiàn)以上錯(cuò)誤。
這里我們已經(jīng)安裝了zend guard loader了,為什么還是無(wú)法執(zhí)行zend加密后的php腳本呢?
通過(guò)查看輸出phpinfo()信息,我發(fā)現(xiàn)有這么幾行信息:
復(fù)制代碼 代碼如下:
PHP Extension 20090626
Zend Extension 220090626
Zend Extension Build API220090626,TS,VC9
請(qǐng)注意,其中的TS是thread safety的簡(jiǎn)寫(xiě)(即線(xiàn)程安全)
一時(shí)也找不出原因,索性直接打開(kāi)zend guard官網(wǎng)進(jìn)行搜索,然后就解決了。
原來(lái),zend guard loader只支持NTS的版本,意味著如果你的php版本是TS的話(huà),就沒(méi)法使用zend guard loader了,如果你想查看自己的php是ts還是nts的,只需要輸出phpinfo,然后搜索下:Thread Safety,disabled對(duì)應(yīng)nts版本,否則為ts。
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。