好的,我有我的实际笔记本电脑,上面安装了vmware player。我正在作为虚拟机运行lubuntu,并在虚拟机上安装了django,测试我的应用程序,所以我运行了python manage.py runserver,我可以通过访问127.0.0.1:8000从我的虚拟机访问该应用程序,然而,如果我从实际计算机(而非虚拟机)访问127.0.0.1:8000,则会显示“chrome无法连接到127.0.0.1:8000”..有任何解决办法吗?
好的,我有我的实际笔记本电脑,上面安装了vmware player。我正在作为虚拟机运行lubuntu,并在虚拟机上安装了django,测试我的应用程序,所以我运行了python manage.py runserver,我可以通过访问127.0.0.1:8000从我的虚拟机访问该应用程序,然而,如果我从实际计算机(而非虚拟机)访问127.0.0.1:8000,则会显示“chrome无法连接到127.0.0.1:8000”..有任何解决办法吗?
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),则只有在同一网络中的计算机才能访问VM。
localhost:8000
。我已经设置了Virtualbox使用NAT并将客户端的8000端口转发。 - Danpython manage.py runserver 0:8000
,那么它就可以从主机上访问(当然,如果你设置了端口转发等)。 - mndeveci我成功地使用了@Kerberos的答案。(没有足够的积分来评论,所以我将它作为单独的答案添加)。
我在VMWare中运行Ubuntu 12.04 LTS客户机操作系统。主机笔记本电脑运行Windows 8。
如Kerberos所述,在VMware中,转到 Player ==> 管理 ==> 虚拟机设置...
在“硬件”选项卡上,选择网络适配器
,然后选择 桥接:直接连接到物理网络
的单选按钮。选择确定
在虚拟机中,网络连接信息现在应该与主机操作系统的互联网连接具有相同的IP地址。在我的情况下是:192.168.1.141(您的IP地址将有所不同)。
在虚拟机中,使用 python manage.py runserver 192.168.1.141:8000
启动Django
使用此方法,我能够从虚拟机内部,主机计算机和同一192.168.1.xxx网络中的其他系统访问在虚拟机中运行的web服务器。
如果想要从主机外部访问虚拟机(客户机),必须将客户机网络模式设置为桥接
桥接模式将客户机连接到实际网络,以便其他计算机可以连接到它