最近專案需求做一個這樣的專案要求,之前寫php從未涉及過,求教各位:
是否可以將php打包成一個安裝包來一鍵安裝(windows環境)
#程式碼加密推薦
#授權怎麼做?
說白了其實就是想為某機構做一個商用的軟體,但是又不希望他複製到其他分部就能用的。
走同样的路,发现不同的人生
1.關於PHP打包
把PHP解釋器和PHP項目打包成一個安裝包完全沒有問題的,我什至把PHP解釋器打包到Android手機上跑都沒問題.因為PHP官方提供了Windows版本的二進制包,所以連自己編譯這一步都省了,為了精簡PHP解釋器,你可以把你不需要的擴展都刪除掉,比如intl擴展及其依賴的ICU,精簡後打包估計解釋器能小於5個MB.因為PHP內置了HTTP伺服器和SQLite資料庫,所以客戶端連Apache和MySQL也不依賴了,直接就能跑PHP專案,而且還省資源.
2.關於PHP代碼保護
PHP7的opcache支援用opcache.file_cache導出PHP腳本對應的二進位opcode,這些opcode是跟作業系統和PHP解釋器版本相關的,能起到一定的代碼保護的作用.另外,Zend Guard和ionCube也提供了付費的PHP程式碼加密服務.
opcache.file_cache
3.授權
例如可以在加密過的PHP代碼裡判斷$_SERVER['SERVER_NAME'],如果不是授權時綁定的域名,就直接拒絕服務.
$_SERVER['SERVER_NAME']
代碼級的加密好像沒有很好的,zend guard 這個可以加密代碼。 。 還有就是使用擴充來實現,就是必須要有你這個擴充才能運行,wdlinux的管理系統就是採用這種方式
雷雷
關於加密可以試試這個 :EnPHP加密混淆
關於打包 直接把php的exe和腳本壓縮到一個目錄 做個bat腳本呼叫即可
關於限制使用的話,一般可以根據HTTP_HOST ENV 來判斷
可以想截圖中的對php源碼加密, 有需要可以+ 2795934612
1.關於PHP打包
把PHP解釋器和PHP項目打包成一個安裝包完全沒有問題的,我什至把PHP解釋器打包到Android手機上跑都沒問題.因為PHP官方提供了Windows版本的二進制包,所以連自己編譯這一步都省了,為了精簡PHP解釋器,你可以把你不需要的擴展都刪除掉,比如intl擴展及其依賴的ICU,精簡後打包估計解釋器能小於5個MB.因為PHP內置了HTTP伺服器和SQLite資料庫,所以客戶端連Apache和MySQL也不依賴了,直接就能跑PHP專案,而且還省資源.
2.關於PHP代碼保護
PHP7的opcache支援用
opcache.file_cache
導出PHP腳本對應的二進位opcode,這些opcode是跟作業系統和PHP解釋器版本相關的,能起到一定的代碼保護的作用.另外,Zend Guard和ionCube也提供了付費的PHP程式碼加密服務.3.授權
例如可以在加密過的PHP代碼裡判斷
$_SERVER['SERVER_NAME']
,如果不是授權時綁定的域名,就直接拒絕服務.代碼級的加密好像沒有很好的,zend guard 這個可以加密代碼。 。
還有就是使用擴充來實現,就是必須要有你這個擴充才能運行,wdlinux的管理系統就是採用這種方式
雷雷
關於加密可以試試這個 :EnPHP加密混淆
關於打包 直接把php的exe和腳本壓縮到一個目錄 做個bat腳本呼叫即可
關於限制使用的話,一般可以根據HTTP_HOST ENV 來判斷
可以想截圖中的對php源碼加密, 有需要可以+ 2795934612