在 vmware fusion 中访问 ubuntu 上的端口 8000

在 vmware fusion 中访问 ubuntu 上的端口 8000

披露:在服务器上,我是个菜鸟。我就是这么说的。

所以我有一个运行 ubuntu 的虚拟机,它使用桥接网络连接,并在端口 8000 上运行 python web 服务器。当我进入http://localhost:8000/虚拟机内部时,一切都按预期工作。但我需要从同一台机器上的虚拟机外部访问此 web 服务器。我曾经ifconfig获取过 ubuntu 虚拟机的本地网络 ip 192.168.1.131。现在,如果我在虚拟机外部使用浏览器访问,http://192.168.1.131我会看到一个页面,显示:

有用!

这是该服务器的默认网页。

Web 服务器软件正在运行,但尚未添加任何内容。

但是这不是我的 python 网络服务器,而是在端口 80 上运行的其他东西。我的 python 在端口 8000 上运行,当我到达时,http://192.168.1.131:8000我得到:

无法连接

      Firefox can't establish a connection to the server at 192.168.1.131:8000.

这是怎么回事?Ubuntu 会阻止传入连接8000但允许它们继续吗80?这是在 Ubuntu 12.04 LTS 64 位虚拟机上的全新安装。任何帮助都非常感谢。谢谢。

答案1

你的 Python 网络服务器可以选择监听哪些地址。它可能正在监听仅有的localhost地址 (127.0.0.1) 上,而不是在外部 IP 地址 192.168.1.131 上。另一方面,Apache(或任何在端口 80 上响应的程序)可能正在监听全部地址,包括本地主机和您的外部 IP 地址。

要使用 Django 执行此操作,请尝试使用:

runserver 0.0.0.0:8000

查看django-admin 的文档了解更多详情。

相关内容