我可以在Django项目主机上看到"It Works!"页面!
当我vagrant ssh
(进入VM),然后在/myprojectdir python manage.py runserver
或中
python manage.py runserver 0.0.0.0:8000
或
python manage.py runserver 10.0.2.2 (guest IP):8000
或
python manage.py runserver 10.0.2.2 (host IP):8000
说
没有问题(0)被静音。。。日期
Django 1.8.7版…
正在启动位于的开发服务器。。。http://X.X.X.X:XXXX
好的,太好了-我会查看地址以查看页面,但
我没有看到"它有效!"页相反,我看到页面左上角的文本
SSH-2.0-打开SSH-6.6.1
绑定服务器或使用访客自己的IP地址都不起作用。
注意:我使用的虚拟机是一个CentOS7盒子,但我在流浪者教程标准盒子Precise32上尝试过,它的行为与我上面描述的相同。
思考的食物:
-
Django方面的事情再次发挥作用;我可以在主机中对
python manage.py runserver
使用相同的文件(工作),但在VM上时不能使用(不工作)。 -
我使用的是NAT连接,当我尝试使用桥接连接时,流浪者会请求一个我不知道的密码(无法通过桥接访问)。
-
我已将:
config.vm.network :forwarded_port, guest: 22, host: 8000, id: 'ssh'
包含在我的"流浪者"文件中。否则流浪者将默认到端口2222。
我必须在Vagrantfile中更改什么才能获得Django开发服务器-"它有效!"-页面并在我的虚拟机上运行?
当前流浪者文件
Vagrant.configure(2) do |config|
config.vm.box = "bento/centos-7.1"
config.vm.box_check_update = false
config.vm.network :forwarded_port, guest: 22, host: 8000, id: 'ssh'
config.vm.synced_folder "myApp", "/myApp"
config.vm.provider "virtualbox" do |vb|
vb.memory = "1024"
end
config.vm.provision "shell", path: "vagrant-setup.sh"
end
config.vm.network :forwarded_port, guest: 22, host: 8000, id: 'ssh'
将客户机(VM)上的端口22转发到主机上的端口8000。
因为你想要8000端口,你应该用替换它
config.vm.network :forwarded_port, guest: 8000, host: 8000