首先,我不确定这是否是提出该问题的正确地方,但由于它因服务器故障而被标记为离题,所以我认为我应该在这里尝试一下。
我将从当前的开发设置开始:我有一个本地 apache 网络服务器,由 XAMPP 管理,没有设置 SSL/认证,在我的个人电脑上运行。我在后台有一个小型 MySQL 数据库。
该网站旨在为员工提供一个简单的表格,以便他们输入轮班详细信息(开始时间、结束时间、处理的箱子数量等)。然后这些详细信息将被发送并存储在 MySQL 数据库中。
我认为该环境的风险相对较低。我不认为任何使用该站点的人会试图以任何严重的方式篡改安全性,因此欧洲法律 (GDPR) 要求的基本安全性应该足够了。我知道我目前的设置不适用于生产,但我对这种项目也非常陌生,这就是为什么我想从你们那里得到一些关于如何设置的想法。
我的问题包括但不限于:
- 服务器和数据库应该在本地(在家里)还是在云端(使用 Azure 或类似的东西)运行?
- 如果它在本地运行,公司员工如何连接到本地服务器(也许通过 VPN?)?
- 当我在本地运行时,如何保证可用性?
- 有哪些 XAMPP 的替代品(用于生产而不是开发)?
- 我还应该考虑什么?
提前非常感谢您!!
答案1
服务器和数据库应该在本地(在家里)还是在云端(使用 Azure 或类似的东西)运行?
两种方法都有可能,各有优缺点。最重要的考虑因素是可用性。
如果它在本地运行,公司员工如何连接到本地服务器(也许通过 VPN?)?
您需要将路由器上的某个端口(最好不是 80)转发到服务器的 80 端口。您还需要公司的 DNS 名称。如果没有,请参阅
您今天可以免费查找的 5 个最佳动态 DNS 提供商。员工将通过 访问https://yourDNS:yourPort
。无需 VPN。
当我在本地运行时,如何保证可用性?
不行。在云端运行时也没有保证,尽管百分比更高。
有哪些 XAMPP 的替代品(用于生产而不是开发)?
Linux 和 Windows 上还有其他 Web 服务器。Windows 上主要使用 IIS。搜索它们。
我还应该考虑什么?
很多。要特别注意安全,避免 SQL 注入漏洞。
答案2
在基础设施方面,我建议不要在本地或云端运行和维护任何像 LAMP 这样的基础设施 - 对于这样的任务,而是采用沙盒方法。
一开始需要一点学习时间,但我们已经成功地使用 Google App Engine 和 PHP - 请参阅https://cloud.google.com/appengine/docs/php/- 对于像你这样的小工具来说
对于低流量应用程序(您的应用程序看起来就是其中之一),它基本上是免费的,您可以使用 Google Cloud SQL 轻松添加 MySQL 数据库。
还可以从表中消除很多与基础设施相关的安全考虑,但是仍然需要注意与应用程序相关的安全性,例如 SQL 注入