情况如下:
我有一个提供 MySQL 数据库帐户的虚拟主机,但仅允许从本地主机连接。
我正在考虑通过 Web 界面公开此 MySQL,并扩展 mysqli 类,以便我可以正常地从另一台主机读取/写入该数据库。
在这样做之前,我想知道我的解决方案是否是个好主意,以及是否已经有这样的开源解决方案适合我的情况?
最佳答案
使用网络服务。 Web 服务旨在提供 API,以便一台服务器可以与另一台服务器通信以访问该服务器的资源。围绕 MySQL 数据库创建 Web 服务包装器的优点是避免将 SQL 层暴露给广泛的 Internet。
一般来说,通过编写 Web 服务,您的应用程序只能使用您专门选择公开的服务。此外,许多 Web 服务框架提供身份验证包和验证,有助于防止恶意实体非法访问或操纵您的数据。
最后,如果您迁移到不同的数据源,您可以在应用程序和数据源之间维护相同的统一接口(interface),从而无需修改 PHP 应用程序。
但是,如果直接将数据库暴露在互联网上,您可能会面临数据被盗和丢失的风险。
有关 Web 服务的更多信息,您可以从 Wiki Article on REST 开始.
关于php - 通过 Web 界面向 PHP 脚本公开 MySQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5924979/