![从 vagrant VM 中卷曲 localhost 会导致“服务器回复为空”](https://linux22.com/image/9822/%E4%BB%8E%20vagrant%20VM%20%E4%B8%AD%E5%8D%B7%E6%9B%B2%20localhost%20%E4%BC%9A%E5%AF%BC%E8%87%B4%E2%80%9C%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%9B%9E%E5%A4%8D%E4%B8%BA%E7%A9%BA%E2%80%9D.png)
我在 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
。