来自服务器的空回复-can';t连接到带有端口转发的vagrant vm
我在一个流浪的虚拟机中运行werkzeug(作为Tilestache设置的一部分),运行UbuntuPrecise 在我的档案中,我有:来自服务器的空回复-can';t连接到带有端口转发的vagrant vm,vagrant,Vagrant,我在一个流浪的虚拟机中运行werkzeug(作为Tilestache设置的一部分),运行UbuntuPrecise 在我的档案中,我有: config.vm.network :forwarded_port, guest: 8080, host: 8080 在VM中启动服务器时,我看到: * Running on http://127.0.0.1:8080/ 如果我curl从VM中找到该地址,我将得到预期的结果。当我从主机curlit时,我得到: curl: (52) Empty reply
config.vm.network :forwarded_port, guest: 8080, host: 8080
在VM中启动服务器时,我看到:
* Running on http://127.0.0.1:8080/
如果我curl
从VM中找到该地址,我将得到预期的结果。当我从主机curl
it时,我得到:
curl: (52) Empty reply from server
Chrome说“没有收到任何数据。”
故障排除信息:
- 服务器响应来自主机的ping
- 端口嗅探器验证端口是否打开
- 在虚拟机中运行netstat-ntlp | grep8080表明服务器正在侦听8080
- 我的本地主机文件没有任何奇怪的冲突
- 我也在转发22=>2222,我可以轻松地通过ssh登录
- 我已经在主机上禁用了防火墙,但我认为来宾上没有防火墙(至少禁用了iptables和ufw)
- 我已经设置了
,以防发生冲突(没有冲突)auto\u correct:true
还有其他想法吗?从虚拟机中运行服务器时,请在0.0.0而不是127.0.0.1上启动服务器 127.0.0.1只能由本地计算机访问,这对于VM来说意味着VM之外的任何东西都无法访问它!0.0.0.0可以从本地网络上的任何位置访问,包括主机在内的VM也可以访问本地网络 答案来自这里: (这显然是从这里得到的答案:) 在以下人员的帮助下: 谷歌诱饵: 如果出现问题,您可能会收到以下错误:
- Chrome:“未收到任何数据”
- Firefox:“连接被重置-页面加载时与服务器的连接被重置。”
- Safari:“Safari无法打开页面[URL],因为服务器意外断开了连接”
- curl:“来自服务器的空回复”
/etc/hosts
中,更改行
127.0.0.1本地主机->0.0.0.0本地主机
然后
重新启动服务器
这也可能是流浪者机器上防火墙的问题。如果可以在“漫游”框上卷曲地址,请检查防火墙设置或将其关闭:
在CENTOS:
sudo service firewalld stop
然后您应该更新firewalld设置并重新启动;) 这很有效。请注意,此设置是在vagrant guest上设置的,而不是在主机系统上设置的。很明显,但当你在谷歌随机搜索“快速修复”时,情况就不那么明显了。哎哟!请不要这样做。这不是正确的答案。即使是虚拟机。这是一个糟糕的建议。@JeffMcCune你想详细说明一下吗?在做了
vagrant reload
之后,它对我很有效。。ThanxDid似乎对我不起作用(使用张阮概述的方法)。同样的错误,“没有收到数据”,但使用转发端口和本地主机,即“localhost:8080”可以正常工作。你是这个站点上最聪明的人。