【发布时间】:2019-02-07 22:37:54
【问题描述】:
在过去的一年中,我一直在为即将上线的客户开发 Laravel 应用程序。现在客户希望数据库在他办公室的自己的服务器上运行(不幸的是,没有商量余地)。这可能吗?
如果有人可以为我指明一个大致的方向,那将对我有很大帮助。也许已经有专门针对 Laravel 的解决方案,但我只是不知道从哪里开始寻找。
【问题讨论】:
-
在你的
Laravel项目的根目录中,你应该有一个名为.env的文件——它应该包含你所有的环境变量,包括数据库主机、用户名和密码......在DB_HOST参数,放他办公室的IP地址。由其办公室的 IT 人员决定是否允许端口 3306 指向数据库服务器并在该点接受流量。 -
" 由其办公室的 IT 人员决定是否允许端口 3306 指向数据库服务器并在此时接受流量。"公司还必须需要一个静态 IP 才能工作,并非所有互联网提供商都提供。@Zak ..您还应该在网络服务器和远程 MySQL 服务器之间使用 SSL 连接,以防止其他人能够在同一网络上的数据。
-
@RaymondNijland -- 好点子!
-
@Robert 要考虑的另一件事是,如果该端口保持打开状态,没有严格的防火墙和一些狡猾的策略——数据库对暴力破解是开放的。值得注意的是,在这种情况下,VPN 隧道可能是明智的。
-
@Zak 您可以添加防火墙策略,仅允许端口上来自一个 IP 的流量。并拒绝来自所有其他 IP 的流量,这仅在 TCP 协议上是安全的,因为 UDP 协议很容易被 IP 欺骗。但 VPN 或 SSH 隧道将是一个额外的安全层。
标签: php mysql laravel deployment server