【问题标题】:moving PHP MySQL web app offline将 PHP MySQL Web 应用程序离线移动
【发布时间】:2012-05-09 15:22:21
【问题描述】:

我最近为我的公司构建了一个 Web 应用程序,现在他们希望它支持离线模式。更复杂的是,我的公司非常关注安全性,不希望我使用 Xampp 或 Mamp。该应用程序处理敏感数据,他们认为这些程序会以某种方式使数据对外界可见(尽管我完全确定情况会如此)。

无论如何,我正在寻找一种方法来允许我的应用程序脱机运行,并且还支持以下技术:PHP、MySQL、jQuery。最困难的部分是我需要在典型的服务器环境之外执行 PHP 代码。

谁能给我一些建议,告诉我如何实施这样一个系统,以及我在安全和数据存储方面可能面临的任何相关漏洞?

【问题讨论】:

    标签: php mysql web-applications offline-mode


    【解决方案1】:

    假设你在他们的机器上为单个用户安装这个 - 你最好的办法是安装 apache/php/mysql,并将 apache 配置为拒绝来自任何远程 IP 地址的连接。

    环境应该与您当前的应用程序基本相同,但系统中只有 1 个用户。

    【讨论】:

      【解决方案2】:

      你的问题有些奇怪

      现在他们希望它支持离线模式

      嗯,这很容易 - 熟悉 html5's offline features

      更复杂的是,我的公司非常关注安全性,不希望我使用 Xampp 或 Mamp

      您是否在台式机上部署了您的网络应用程序?或者你的意思是你被禁止使用网络服务器? Xampp/Mamp 是开发工具 - 您的面向公众的应用程序应该位于专门为此目的配置的机器上,并带有运行 apache/nginx/iis/PHP5.4-builtin/任何您喜欢的网络服务器。

      其中最困难的部分是我需要在典型的服务器环境之外执行 PHP 代码。

      您的环境如何非典型? Mike 提到了 php-gtk - 但 IMO 你不应该走那条路,除非你的要求是“桌面应用程序”+“绝对必须用 php 编写” - 你的问题不清楚。

      我在安全和数据存储方面可能面临的任何相关漏洞

      好吧,您在用户可以访问的客户端(浏览器)上的本地存储中放置的任何内容 - 请记住这一点。不要将敏感数据发送到您认为不安全且伪公共的位置,即某些用户的浏览器缓存。

      【讨论】:

        【解决方案3】:

        如果您想运行 html/javascript,您可能需要在服务器/客户端环境中运行它,因为浏览器无法运行 php,而 php 应用程序作为独立应用程序需要解析html/css/javascript(它需要浏览器来显示视图)。

        最好的做法是将应用程序放到您可以控制访问的服务器上。仅将访问控制设置为特定的 IP 地址,如果您可以在防火墙后面的 Intranet 上运行它,那么网络外的任何人都无法访问它,这样就更好了。

        PHP 可以在桌面环境中运行,但这里的关键是它不会运行您用来显示的 javascript/html。您可以将 php 与 php-gtk 等第三方库一起使用来制作不需要服务器或浏览器的桌面应用程序,但 php-gtk 没有最好的支持。

        如果应用程序需要存储数据以供其他计算机/用户访问,则它需要位于网络上。如果不需要这样做,您可以考虑使用针对桌面应用程序的不同编程语言,这样您就可以使其完全脱机(例如 java 或 .NET)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-10-05
          • 2017-05-23
          • 2011-12-07
          • 1970-01-01
          • 1970-01-01
          • 2013-05-23
          相关资源
          最近更新 更多