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

use*_*875 11 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"..任何想法如何修复它?

Der*_*wok 14

您可以尝试运行服务器 0.0.0.0

python manage.py runserver 0.0.0.0:8000
Run Code Online (Sandbox Code Playgroud)

IP地址0.0.0.0表示"本地计算机上的所有IP地址"(或本地计算机上的所有IPv4地址).

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

注意:如果您的VM仅具有内部IP(例如192.168.xx),则只有同一网络上的计算机才能访问VM.


Chr*_*man 10

我能够得到@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中,使用启动Django python manage runserver 192.168.1.141:8000

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

  • 好的,所以我只关闭我的VM并重新启动它然后桥接网络并且它工作正常.在桥接之后,我也只是在0.0.0.0:8000上运行了冲浪者,然后从我的主机操作系统的谷歌浏览器访问了我的VM的IP地址(192.169.2.49:8000),它运行良好. (2认同)