我正尝试从我的 Android 设备访问托管在 Mac 本地主机中的数据库,它们都连接到同一个网络。
localhost 项目正在运行www.localhost:8000/
我在手机浏览器中输入了 IP:192.168.1.1(我的笔记本电脑连接),并且能够看到我的项目的根文件夹。
然而,当我尝试运行它时192.168.1.1:8000/
,我无法访问任何内容,并且网络浏览器返回“网页不可用”。
所以现在的问题是,我可以使用我的 Android 设备访问根文件夹,但无法访问我的笔记本电脑的“本地主机服务器”。
答案1
我猜想这是因为您的服务器设置为loopback
仅在接口上监听。您可以通过查看 的输出来确认这一点netstat -an
。作为输出的示例
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN
这意味着该服务器(在本例中为绑定名称服务器)仅适用LISTEN
于地址 127.0.0.1 上的端口 53 上的连接。
您可以通过配置服务器以监听 192.168.1.1 地址或执行类似 ssh 隧道的操作来解决这个问题。这是一篇有点老的文章(2007 年),但内容仍然有意义:http://magazine.redhat.com/2007/11/06/ssh-port-forwarding/ (镜像)。
我个人使用油灰在我的 Windows 主机上进行这种类型的端口转发。
答案2
我遇到了同样的问题,我在 Windows 10 笔记本电脑上使用 ssh 代理连接到我的 centos 8 服务器。我在 centos 8 服务器上托管了一个本地站点,并从我的服务器在本地主机上访问该站点。我输入了服务器 IP 地址并包含了我的本地主机运行的端口号。
远程服务器 ip:8080 # 8080 是我的网站在远程服务器上运行的本地主机端口,