2

在未来的某个星期,我将有工作来创建将作为计费流程的 php web 应用程序。正如客户和我的团队所同意的那样,Web 应用程序只会部署在他们的内部服务器中。这种需要为我自己提出了一些基本问题。

  1. 我们如何锁定网络应用程序真的只能在内部服务器上运行,而不是在互联网上运行?由于这种需要,这项工作的成本在一定程度上被削减了。所以最好只像客户描述的那样工作:它将部署在 Intranet 和 Intranet 中
  2. 在 Intranet 中仅部署 php 应用程序(及其所有 apache 服务器)的利弊是什么?
  3. 在 Intranet 环境和 Internet 中部署 php 应用程序的根本区别是什么?有什么需要考虑的吗?
  4. 我知道我们可以将 Windows 放入闪存盘或笔盘中。我有任何以相同方式工作的自动运行 apache/php 服务器吗?
4

3 回答 3

3

设置您的 apache 配置,以便仅允许内部网络使用 mod_authz_host 访问计费系统。

<Directory /billing-system/docroot>
Order Deny,Allow
Deny from all
Allow from *internal ip range*
</Directory>

有关详细信息,请参阅http://httpd.apache.org/docs/2.1/mod/mod_authz_host.html#allow

于 2010-04-22T14:30:28.727 回答
1

只需在其网络上公司防火墙内的服务器上部署带有应用程序的 WAMP(或 LAMP)服务器。

然后用户通过服务器名访问您的应用程序。例如,如果机器名称是“Elmo”,那么用户只需通过以下方式访问您的应用程序:

http://elmo/index.php

(这是假设在默认端口 80 上在服务器上运行的单个应用程序)

这里的诀窍是,如果这台机器没有连接到 Internet,并且您需要从外部对其进行更新,则您需要有一些其他访问权限,例如 SFTP

于 2010-04-22T14:10:06.503 回答
1
  1. 如果内网未连接到互联网,您可以通过 ping 一个知名站点(例如您的域或 google.com)来验证,如果它应答则拒绝操作。但这样的内联网正变得越来越少。也许限制最大用户数(总用户数或并发用户数)会更容易 - 验证应用程序是否无法从外部访问可能很困难。

  2. 更少尝试破解应用程序(在公司防火墙后面) - 这是优点和缺点,因为那样你可能会不太注意安全考虑,因为“嗯,它是一个内部应用程序!”

  3. 没有根本区别。在大型组织中,通常使用某种形式的单点登录,您必须将其集成;此外,服务器配置和软件可能会受到 IT 的限制。

  4. XAMPP 可以从笔式驱动器运行,因此如果您可以从那里启动 Windows 并指示它运行 XAMPP,这应该是可能的。

于 2010-04-22T14:12:39.413 回答