我正在尝试查找文档,其中讨论了在 Apache Web 服务器和单独的 MySQL 数据库服务器之间创建永久连接的安全方法。我找不到安全连接两者的标准流程。这通常是如何完成的?
答案1
将您的服务器放在私有 VLAN 上。
如果您的应用程序服务器是 192.168.1.10 并且您的 MySQL 服务器是 192.168.1.11 -
在 MySQL 服务器上执行 GRANT 语句,授予 PHP 应用程序主机对 MySQL 服务器的访问权限。即 GRANT INSERT, SELECT on db.* from appuser@'192.168.1.10' confirmed by 'password';
在 PHP 代码中创建连接字符串时指定 MySQL 主机:
$link = mysql_connect('192.168.1.11:3306', 'appuser', 'password');
还需要确保您的 my.cnf 没有 bind-address=127.0.0.1,如果包含,则不允许任何远程连接。因此请将其注释掉。
答案2
Web 应用程序和 DB 服务器之间不存在“永久连接”。应用程序将打开与 SQL 服务器的连接,执行其工作,然后在完成后关闭连接。
应用程序连接到服务器的方式由应用程序本身决定;通常它会有一个配置文件,您需要在其中设置连接参数。而您用于保护该连接的选项将部分取决于该应用程序支持和要求的内容。