php - 从另一个网络远程访问mysql服务器

标签 php mysql

我的笔记本电脑上运行着 MySQL wamp 服务器。我创建了一个 php 文件来在数据库上运行 SQL 查询并返回一些行。当我在笔记本电脑的浏览器上使用 URL

运行 php 文件时
http://192.168.2.10/getData.php?sender=x

我得到了结果。我可以在连接到同一网络的手机浏览器上使用相同的 URL 获得相同的结果。但是,当我使用移动数据而不是笔记本电脑使用的网络时,我无法得到结果。

我研究了一下,发现我必须使用

GRANT ALL PRIVILEGES ON chats.* TO 'user'@'%' IDENTIFIED BY 'password'

我就是这么做的。然后,在手机上我想我必须使用服务器的全局和本地 IP 的某种组合。但我应该使用什么组合呢?

最佳答案

当您使用 php 时,需要从执行 .php 脚本的服务器“看到”所建立的连接(可以是与您的 mysql 服务器不同的 IP)。在这种情况下,您需要确保使用的用户具有 user@% (其中 % 表示允许任何 ip)或 user@ip (其中 ip 是连接的 ip)。

在您的手机上输入网络服务器的 IP + .php 脚本的路径。在您的情况下,这似乎是 http://192.168.2.10/getData.php?sender=x

现在您需要确保网络服务器绑定(bind)到您的外部 IP 地址(而不是本地主机),在这种情况下,您的 url 将不起作用。为了确保一切正常,请拿另一台电脑/笔记本电脑(在同一网络中)并检查是否从浏览器运行脚本。

关于php - 从另一个网络远程访问mysql服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37875713/

相关文章:

javascript - Jquery 中没有从 php json_encode 接收到数据

用于重命名表中部分 URL 的 MySQL 查询

php - 将表连接成 4 列并显示其他字段

mysql - 如何使用 Express 连接 Node.js 和 MySQL 8.0?

php - 未配置数据库连接 [用户]

php - 用 ; 关闭语句或不?

php - 让用户添加自己的样式表是个坏主意吗?

javascript - 使用 javascript 转义 php 字符,正确的语法引号

mysql - order by 子句中的参数不排序-mysql,C#

PHP - 在表格行中添加特定的背景颜色