从 vagrant VM 中卷曲 localhost 会导致“服务器回复为空”

从 vagrant VM 中卷曲 localhost 会导致“服务器回复为空”

我在 vagrant 虚拟机中启动了 deepstream 服务器。服务器说是

Listening for websocket connections on 0.0.0.0:6020/deepstream

虚拟机中的/etc/hosts:

# 0.0.0.0   localhost
127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

当我从虚拟机内卷曲 Deepstream 服务器时,我得到

curl 'http://0.0.0.0:6020/deepstream'
curl: (52) Empty reply from server

我尝试使用 localhost、127.0.0.1 和 0.0.0.0 启动服务器。我也尝试了curl这三个地址,但没有成功。

答案1

监听 0.0.0.0 表示监听全部本地 IP 地址。

尝试curl http://127.0.0.1:6020/deepstream从虚拟机本身访问它。或者使用 VM 上的任何其他 IP 地址 - 如果您想从另一台计算机(包括 VM 的主机)访问它,则需要非本地主机 IP 地址。或者解析为虚拟机上任何 IP 地址的任何主机名。

如果您的虚拟机没有任何其他 IP 地址,那么如果您想从虚拟机外部访问其上的任何网络服务,那么您需要解决这个问题。这超出了这个问题的范围,请发布一个新问题,其中包含您的虚拟机设置的详细信息(包括 vagrant 配置和本地 dhcp 服务器(如果有))

注意:最好在另一个终端中监视 deepstream 服务器的日志文件,例如通过运行tail -f然后尝试连接,至少在调试初始设置时(或出现问题的任何其他时间)。

顺便说一句,您应该删除该0.0.0.0条目/etc/hosts并取消注释该127.0.0.1条目。 0.0.0.0不是 localhost它不是 的同义词localhost

相关内容