5

有没有办法将 Web 应用程序作为独立的桌面应用程序运行?可以将使用 PHP、MySQL 和 Apache 编写的 Web 应用程序转换为满足以下要求的独立应用程序:

1. Application should be called as http://myapp.localhost.
2. Application should have desktop icon which directly opens browser with application's URL.
3. Source code of web application should be hidden from users.
4. Installation for end user must be as easy as possible.

现在我使用 xampp 执行步骤 1-2 并手动创建快捷方式。我对自动执行上述步骤的一些包装器、安装程序感兴趣。但我不知道第三步。

4

4 回答 4

1

关于第 3 项,请参阅Can you "compile" PHP code?. 这将允许您使用 PHP 进行开发并通过安装程序部署应用程序。

根据您的开发环境,有几个安装程序包可以让您自动执行这些步骤。

于 2014-01-08T18:40:56.223 回答
1

PHP 和 MySQL 需要运行 Web 服务器。这意味着您需要将代码复制到客户端计算机上,然后仍然在客户端计算机上本地运行 Web 服务器。

如果这是您想要的,请查看Microsoft IIS Express(此处)

简而言之,IIS 是一个 Web 服务器,可以托管和运行服务器端 Web 应用程序,用 ASP.NET 或 PHP 编写。

以下是您需要采取的步骤:

  1. 在客户端机器上安装 IIS express(一次性进程,我认为完全可以接受 - 将其视为运行时安装)。
  2. 为要部署的 Web 应用程序的源文件创建一个指定(隐藏)文件夹(一次性进程)。
  3. 创建一个 Windows 批处理文件(bat 或 cmd)来启动 IIS(如此处所述),然后打开网站的 URL,以便启动默认浏览器。该文件将用作快捷方式,因此您可以将其放在桌面或任何适当的地方(一次性处理)。
  4. 将您的 Web 应用程序部署到上述步骤 2 中的隐藏文件夹(重复过程- 当您要将客户端升级到新版本时部署到同一文件夹)。

请记住,我的建议是基于您在本地(在本地主机上)托管和运行应用程序的要求。

但是,如果可以选择在单独的机器(不是本地主机)上运行应用程序,那么您可以简单地放置一个指向网络或 Internet 地址 URL 的桌面快捷方式,这样就可以毫无问题地打开默认浏览器。

于 2014-01-14T21:26:02.227 回答
0

恐怕没那么简单。

  1. 如果您想使用这种方法(我强烈反对),您将不得不在客户端上部署某种类型的网络服务器。您应该能够运行 Apache/IIS Express 和 MySQL/SQLite 可执行文件并启动一个简单的网络服务器和数据库。

  2. 如果您还想要一个图标,您可以创建一个安装程序来创建此图标并指向您想要的 URL。

  3. 恐怕这是不可能的。PHP 是并且将永远是一种脚本语言。您可能能够以某种方式对其进行混淆,但任何可以下载您的应用程序的人都可以对其进行去混淆处理。

  4. 同样,您可以创建一个安装程序。据我所知,Inno Setup 相当不错。

于 2014-01-15T06:25:03.137 回答
0

我建议 Pouchdb http://pouchdb.com/api.html和 Adob​​e Air http://www.adobe.com/devnet/air/air-sdk-download.edu.html。通过这种方式,您可以使用 html 和 javascript 进行编码,并使用 Adob​​e Air 将其打包。

于 2014-01-14T21:09:28.643 回答