簡體   English   中英

是否可以將PHP / MySQL應用程序包裝成可以作為獨立應用程序運行的二進制文件?

[英]Is it possible to wrap PHP/MySQL application in binary that can work as stand alone application?

我的應用程序是用PHP / MYSQL編寫的。 我們正在尋找在客戶端站點機器上部署的選項。 有什么選擇,怎么做? 除此之外,我們更關注保護我們的代碼。 因此,我們正在研究可以為php / mysql上開發的Web應用程序創建二進制應用程序的選項。

除此之外是否有任何可用的安裝程序可以提取和安裝php / apache / mysql堆棧?

有關可用於編譯/包裝PHP代碼作為Windows可執行文件的選項的完整列表,請參閱此前對類似問題的回復

其他可用於非Windows的選項:

HPHP(Facebook的HipHop)

https://github.com/facebook/hiphop-php/wiki/

https://github.com/facebook/hiphop-php

HipHop for PHP是PHP腳本代碼的源代碼轉換器。 HipHop以編程方式將PHP源代碼轉換為高度優化的C ++,然后使用g ++將其編譯為機器代碼。 HipHop包括代碼轉換器,PHP運行時系統的重新實現,以及許多常見PHP擴展的重寫,以利用這些性能優化。 HipHop由Facebook創建,用於節省服務器上的資源。 根據PHP許可證3.01版的條款,它以C ++和C編寫的超過300,000行源代碼作為自由軟件進行分發。 Facebook還開發了HPHPi,這是一個專為開發而設計的實驗性解釋器,無需在運行之前編譯PHP源代碼。

Roadsend和Roadsend Raven

http://www.roadsend.com/home/index.php

https://github.com/weyrick/roadsend-php/wiki

https://github.com/weyrick/roadsend-php

Roadsend PHP是PHP語言的開源實現。 它將PHP源代碼編譯為獨立的本機二進制文件,不需要解釋器。 Roadsend Compiler可以使用Fast / CGI,帶有嵌入式Web服務器(!MicroServer)的離線Web應用程序,帶有PHP-GTK的桌面GUI應用程序和控制台應用程序構建在線Web應用程序。 眾所周知,它基於Linux,Windows(使用mingw),Mac OSX和FreeBSD構建。

Roadsend編譯器還包含用於解釋,分析和逐步調試PHP代碼的工具。

Roadsend PHP是PHP語言和運行時環境的完全獨立的實現,並不基於原始實現(使用Zend引擎),該實現在http://www.php.net上單獨提供。 Zend PHP不是必需的,並且不以任何方式使用,由Roadsend PHP使用。

最后一次更改為roadsend代碼是17個月前(Ubuntu 10.04 llvm軟件包的補丁),之前是21個月前。 自述文件已在過去兩周(在撰寫本文時)更新,因此也許它將再次復活。 可以構建Linux可執行文件

Phalanger

http://www.php-compiler.net/

http://wiki.php-compiler.net/Phalanger_Wiki

http://phalanger.codeplex.com/

Phalanger是一個項目,由布拉格的查爾斯大學開始,並得到了微軟的支持。 它將用PHP腳本語言編寫的源代碼編譯成CIL(通用中間語言)字節碼。 它處理編譯過程的開始,該過程由.NET Framework的JIT編譯器組件完成。 它不解決本機代碼生成和優化問題。 其目的是將PHP腳本編譯為.NET程序集,包含CIL代碼和元數據的邏輯單元。

PHC

http://www.phpcompiler.org/

phc是PHP的開源編譯器,支持插件。 此外,它可以用於漂亮打印或混淆PHP代碼,作為開發處理PHP腳本的應用程序的框架,或者將PHP轉換為XML並返回,使用XML工具處理PHP腳本。

PHP程序員的phc(參見手冊):

  • 將PHP源代碼編譯成(優化的)可執行文件(支持整個PHP標准庫)。
  • 將Web應用程序編譯為(優化的)擴展(支持整個PHP標准庫)。
  • 混淆PHP代碼( - obfuscate flag - experimental)。 將許多php腳本組合到一個文件中(--include flag - experimental)。

最后更改為phc代碼是在12月18日,所以sill積極進行持續開發。 可以構建Linux可執行文件可以用來構建C代碼,使用適當的PHP“宏”來擴展

ROSE編譯器

http://rosecompiler.org/

依賴於phc編譯器來處理PHP

看看PHP混淆器,例子:

http://www.seocompany.ca/software/free-encryption-software.html

https://stackoverflow.com/questions/908678/is-there-any-good-php-obfuscator

混淆器不是100%,但它們易於實現,輸出非常粗糙。

我不確定Windows,但在Linux上你可以嘗試使用Facebook的HipHop項目,如果你沒有使用eval()和其他功能的話。 獲取更多信息以及如何在Facebook Hiphop PHP - git

“php / apache / mysql”堆棧的任何安裝程序? 是的,有一個EasyPHP ,您也可以獲得便攜式(提取和運行)版本。

如果您可以嘗試使用vmware ThinApp for Windows平台進行一些研發。 借助VMware ThinApp,應用程序可以打包成單個可執行文件,這些可執行文件彼此完全隔離,並與操作系統完全隔離

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM