Vagrantfile:
config.vm.network "forwarded_port", guest: 8080, host: 8080
在我的虚拟机上运行此命令:
python manage.py runserver 0.0.0.0:8080
但是当我在主机上尝试curl
时,响应为curl: (52) Empty reply from server
,在浏览器上显示为127.0.0.1 didn’t send any data.
我在stackoverflow上查找了这个问题,他们中的大多数都能够通过向0.0.0.0
命令添加runserver
来解决它。但是,我已经添加了它。
我试过了:
Disabling the firewall
并允许accepting all input and output in iptables.
所有与虚拟机的连接
我将/ etc / hosts中的127.0.0.1 localhost
更改为0.0.0.0 localhost
但仍然是相同的响应。
我确保我的主机无法通过禁用主机上的防火墙来阻止它。
注意:我在虚拟机上使用ubuntu机器,在主机上使用mac OS。
答案 0 :(得分:4)
当虚拟机正在运行时,即使您运行(123) 4<span style="background-color:#ff0;">56-78</span>90
,机器也无法正确注册对Vagrantfile的任何更改。
为确保正确反映所有更改,应暂停虚拟机,然后再次运行。
在我的情况下,我在流浪汉运行时更改了转发端口。我正在做vagrant up
,假设变化会得到反映,但他们没有。
执行vagrant up
后跟vagrant halt
解决了我的问题。
答案 1 :(得分:0)
确保您的端口转发不会自动更正。如果是,请按以下步骤暂停所有计算机并删除端口转发缓存:
rm -rf ~/.vagrant.d/data/fp-leases