如何在 VMWare 中查看 Django 开发服务器?

发布于 2024-12-02 21:35:22 字数 873 浏览 1 评论 0原文

我正在尝试从运行 Windows 的 VMWare 连接到在 OS X localhost:8000 中运行的 Django 开发服务器。

我尝试了各种设置组合,但似乎都不起作用:

  • 在 localhost:8000 上运行 Django 服务器,并在 Windows 中连接到 VMWare 分配给 Mac 的 IP 地址,即 192.168.XX.XX:8000
  • 在端口 80 上运行 Django 服务器
  • 在 VMWare 分配的 Mac IP 上运行 Django 服务器,例如 python manage.py runserver 192.168.XX.XX:8000

这些似乎都不起作用。我有一个也在本地运行的 Apache 服务器,并且能够连接到该服务器,因此这不是网络问题。有什么方法可以从 VMWare 中连接到 localhost:8000 吗?

更新:为了使其正常工作,我使用了以下设置:

  • 在 VMWare 中,将 VM 的网络设置为“直接连接到物理网络(桥接)”,而不是“共享此 Mac 的网络”连接(NAT)”
  • 在 Mac 本身所在的网络(不是 VMWare 设置的专用网络)上查找 Mac 本身的 IP 地址,例如 192.168.1.2。这可以在 ifconfig 中找到,或者在“系统偏好设置”>“系统偏好设置”中找到。网络
  • 在该 IP 地址上启动 Django 开发服务器: sudo python manage.py runserver 192.168.1.2:80
  • 在 VMWare 中,连接到 Django 站点 192.168.1.2

感谢 randrumree 提供以下答案 - 这本质上是相同的解决方案。

I am trying to connect to a Django development server, running in OS X localhost:8000, from VMWare running Windows.

I've tried various combinations of settings, but none of them seem to work:

  • Running the Django server on localhost:8000, and in Windows, connecting to the IP address assigned to the Mac by VMWare, i.e. 192.168.XX.XX:8000
  • Running the Django server on port 80
  • Running the Django server on the Mac's IP assigned by VMWare, e.g. python manage.py runserver 192.168.XX.XX:8000

None of these seem to work. I have an Apache server also running locally, and am able to connect to that, so it's not an issue with the network. Is there any way to connect to localhost:8000 from within VMWare?

Update: To get this to work, I used the following settings:

  • In VMWare, set the network of the VM to "Connect directly to the physical network (Bridged)", rather than "Share this Mac's network connection (NAT)"
  • Find the IP address of the Mac itself on the network the Mac itself is on (not the private network VMWare sets up), e.g. 192.168.1.2. This can be found in ifconfig, or in System Preferences > Network
  • Start the Django development server on that IP address: sudo python manage.py runserver 192.168.1.2:80
  • In VMWare, connect to the Django site at 192.168.1.2

Thanks to randrumree for the answer below -- this is essentially the same solution.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

谁与争疯 2024-12-09 21:35:22
  • 在VMWare中,将VM的网络设置为“直接连接到
    物理网络(桥接)”,而不是“共享此 Mac 的网络
    连接(NAT)”
  • 在上找到Mac本身的IP地址
    Mac 本身所在的网络(不是 VMWare 设置的专用网络)
    向上)。这可以使用 ifconfig 找到,或者在系统中找到
    首选项>网络。假设它是 192.168.1.2
  • 在该 IP 上启动 Django 开发服务器
    地址:python manage.py runserver 192.168.1.2:8000
  • 在 VMWare 中,连接到 Django 站点 http://192.168.1.2:8000
  • In VMWare, set the network of the VM to "Connect directly to the
    physical network (Bridged)", rather than "Share this Mac's network
    connection (NAT)"
  • Find the IP address of the Mac itself on the
    network the Mac itself is on (not the private network VMWare sets
    up). This can be found using ifconfig, or in System
    Preferences > Network. Let's say it's 192.168.1.2.
  • Start the Django development server on that IP
    address: python manage.py runserver 192.168.1.2:8000
  • In VMWare, connect to the Django site at http://192.168.1.2:8000
歌枕肩 2024-12-09 21:35:22

尝试:

python manage.py runserver 0.0.0.0:8000

Try:

python manage.py runserver 0.0.0.0:8000
小苏打饼 2024-12-09 21:35:22

我曾经在 Ubuntu 11.04 VM 中运行的 Django 开发服务器上运行过一次。

我能够通过将 python manage.py runserver 中的 ip 设置为 Windows 7 上该虚拟机外部的开发服务器(这里是 OS X 计算机的本地 ip,而不是本地主机):8000 与运行它的计算机相同的 ip ,在您的情况下,是 OS X。

我的虚拟机设置为拥有与主机不同的 IP 地址。

由于情况恰恰相反,我怀疑您的设置也应该有效。

也许您应该检查虚拟机是否可以 ping 通 OS X 计算机,反之亦然,或者它们的 IP 是否唯一。

I got it working one time with a Django Development Server running inside a Ubuntu 11.04 VM.

I was able to access the development server outside that VM on Windows 7 by setting the ip in python manage.py runserver (local ip of the OS X machine here, not localhost):8000 to the same ip as the computer it was running on, in your case, the OS X.

My VM was set up to have its own IP address different from that of the host.

Since it's just the other way around, I would suspect your set-up should work too.

Perhaps you should check whether the VM can ping the OS X computer and vice versa or if their IP's are unique.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文