【问题标题】:What should I consider when connecting a PHP app to MSSQL over VPN?通过 VPN 将 PHP 应用程序连接到 MSSQL 时应该考虑什么?
【发布时间】:2011-05-26 02:01:09
【问题描述】:

所以到目前为止我的理解是:

  1. 在我的 Centos 服务器上安装 CLI VPN 客户端
  2. 打开与远程 IIS 服务器的 VPN 连接
  3. 正常连接到 PHP 中的 MSSQL

我很担心

  1. 延迟:我应该期待多少?会不会大相径庭?它会“破坏我的应用程序”吗?
  2. 关闭的连接:我是否应该期望我的连接保持打开状态?用 PHP 重新打开它是否简单/足够快?
  3. VPN 客户端配置:这会非常困难吗?除了打开端口之外,还有其他需要更改的服务器设置吗?
  4. 在 PHP 中连接到数据库:我必须采取哪些特殊步骤,因为它是通过 VPN 进行的?

其他信息:此连接仅供网站上的一项功能使用(查找本地代理),我预计普通用户每次访问该功能的使用次数不会超过 1-2 次。

也许这作为 wiki 更好;我还没有找到关于这个主题的好文章,而且我得到的关于通过 VPN 运行 webapp DB 连接的反馈显然是混合的。有此任务经验的人能给我一些建议吗?

【问题讨论】:

    标签: php sql-server centos vpn


    【解决方案1】:

    还有其他方法可以做到吗?也许是 SSL?不过,我对这个问题的看法。

    延迟:我应该期待多少?会不会大相径庭?它会“破坏我的应用程序”吗?

    取决于连接本身和一些不同的因素。例如,我们的两个办公室之间有一个 OpenVPN 连接,全天候运行 24/7,即使在高峰期(大量 P2P 流量,不要问 :) 连接是稳定的,没有观察到太多延迟。我们不时遇到的唯一问题是 ISP 问题。当一个人倒下时,一侧的工作就会停止。您需要将其考虑在内并实施某种故障安全机制。否则,您的应用程序将“中断”。

    关闭连接:我是否应该期望我的连接保持打开状态?用 PHP 重新打开它是否简单/足够快?

    我不推荐 PHP 应用程序处理 VPN 连接,它应该专注于确保业务逻辑正常工作,并将所有连接处理留在网络/服务器上。如果您要将所有这些逻辑放入应用程序中,并且如果 VPN 连接发生变化,您将需要重写它。叫我懒惰,但我喜欢抽象:)

    VPN 客户端配置:这会非常困难吗?除了打开端口之外,还有其他需要更改的服务器设置吗?

    很难回答这个问题,因为没有关于使用的 VPN 客户端/服务器的信息,也没有任何 VPN 服务器配置。它可以像打开港口一样简单,也可以像跑马拉松一样困难,无需任何事先练习。

    在 PHP 中连接到数据库:我必须采取哪些特殊步骤,因为它是通过 VPN 进行的?

    您不应该,只要确保连接后可以访问数据库即可。你会亲

    【讨论】:

    • 谢谢大卫。回复:重新打开连接,我的意思是“连接到数据库,如果失败,请执行 shell 命令以启动新的 VPN 连接,然后尝试再次连接到数据库。”是否有您推荐的应用程序或实用程序来监控 VPN 连接并使其保持打开状态?
    • 您应该只连接到数据库,而不是在 PHP 应用程序本身中打开 VPN 连接。将这两层分开很重要,除非您出于某种原因真的想将它们合并在一起。在过去的几年里我都做过,我更喜欢把它们分开,不允许 PHP “神奇地”处理它。我们正在使用 Nagios (nagios.org) 来监控所有服务和服务器,到目前为止工作正常:)
    • 是否会使用 SSL 实现相同的“安全/密码保护”连接?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-07
    • 1970-01-01
    • 1970-01-01
    • 2017-04-06
    • 2016-10-13
    • 2013-12-08
    相关资源
    最近更新 更多