如何从实际计算机访问虚拟机上的django开发服务器

时间:2013-08-31 18:49:39

标签: django virtual-machine

好的,所以我的实际笔记本电脑安装了vmware播放器。我正在运行lubuntu作为虚拟机,我在虚拟机上安装了django,我正在测试我的应用程序,所以我做了python manage.py runserver,我可以通过从我的VM访问127.0.0.1:8000来访问该应用程序,但是,如果我从实际的计算机(而不是VM)转到127.0.0.1:8000,它说“chrome无法连接到127.0.0.1:8000”..任何想法如何修复它?

3 个答案:

答案 0 :(得分:11)

您可以尝试在0.0.0.0

上运行服务器
python manage.py runserver 0.0.0.0:8000

IP地址0.0.0.0表示“本地计算机上的所有IP地址”(或本地计算机上的所有IPv4地址)。

接下来,您将需要VM的IP地址。在其他计算机上访问http://< ip_address_of_vm>:8000应访问VM上的django开发服务器。

注意:如果您的VM只有一个内部IP(例如192.168.x.x),那么只有同一网络上的计算机才能访问该虚拟机。

答案 1 :(得分:8)

我能够得到@Kerberos的工作答案。 (没有足够的评论点,所以我将其作为一个单独的答案添加)。

我在VMWare的客户操作系统中运行Ubuntu 12.04 LTS。主机笔记本电脑正在运行Windows 8。

如Kerberos所述,在VMWare中,转到Player ==> Manage ==> Virtual Machine Settings...

在硬件标签上,选择Network Adaptor,然后选择Bridged: Connect directly to the physical network的单选按钮。选择OK

在VM中,网络连接信息现在应该具有与主机OS互联网连接相同的IP地址。在我的情况下:192.168.1.141(你的会有所不同)。

在VM中,使用python manage runserver 192.168.1.141:8000

启动Django

使用此方法,我可以从VM,主机以及同一192.168.1.xxx网络上的其他系统访问此IP地址的VM中运行的Web服务器。

答案 2 :(得分:2)

要从主机外部访问虚拟机(来宾),您必须将来宾网络模式设置为桥接

桥接模式将guest虚拟机连接到实际网络,以便其他计算机可以连接到它