2017-06-08 74 views
1

Vagrantfile运行在主机上:Django的服务器不与流浪汉

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.0runserver命令。但是,我已经添加了它。

我尝试:

  1. ,并允许对虚拟机的所有连接通过accepting all input and output in iptables.

  2. 我在/ etc /主机改变127.0.0.1 localhost0.0.0.0 localhost但仍具有相同的响应。

  3. 我确保我的主机没有阻止我的主机上的防火墙。

注:我在主机上的虚拟机和mac OS上使用Ubuntu机器。

回答

2

当虚拟机正在运行时,即使运行vagrant up,计算机也无法正确注册对Vagrantfile的任何更改。

为确保所有更改得到正确反映,应该暂停虚拟机,然后再次运行。

在我的情况下,当流浪者在跑时,我改变了转发端口。我在做vagrant up假设变化会得到反映,但他们没有。 在做vagrant halt后面vagrant up解决了我的问题。

+0

您可以在Vagrantfile –

+0

变化@FrédéricHenri我不知道,经过简单的运行'流浪汉reload'。谢谢。 – user2507

0

确保您的端口转发不会自动更正。如果是这样,停止所有的机器,并按照去除端口转发缓存:

rm -rf ~/.vagrant.d/data/fp-leases