繁体   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