从主机浏览器访问 VirtualBox/Vagrant 机器上的 Web 服务器?

问题描述 投票:0回答:2

我在运行 Ubuntu 的 VirtualBox/Vagrant 机器上有一个 Django Web 服务器。

我按照本指南创建了一个 Django 项目:https://docs.djangoproject.com/en/dev/intro/tutorial01/

我的访客计算机内有一个在

http://127.0.0.1:8000/
处运行的 Web 服务器。这是我第一次运行 Django Web 服务器。它应该是一个 hello world 应用程序。

如何从我的主机浏览器访问此 Web 应用程序?

我尝试在来宾中运行 ifconfig 来获取我应该访问的 IP,我在 inet addr 中发现了一个有希望的 IP 地址。

但是我尝试在我的主机浏览器中输入以下内容,但没有成功。

http://inetaddrnumbers:8000/

如何从浏览器访问网络服务器?

django virtualbox
2个回答
44
投票

试试这个。

  1. 打开 vagrant 文件(应位于您指定创建新 vagrant 机器的目录中)。
  2. 搜索
    config.vm.network
    。如果您之前没有设置该文件,则应将其注释掉。
  3. 将其更改为如下所示:
    config.vm.network "private_network", ip: "55.55.55.5"
    。这里的IP地址(55.55.55.5)可以是你想要的任何IP地址。
  4. 现在从 vagrant 机器注销,并通过命令
    vagrant reload
    重新加载 vagrant 机器。
  5. 再次通过 ssh 连接到你的 vagrant 机器,并通过命令
    python manage.py runserver 0.0.0.0:80
    重新启动你的 Django 服务器。同样,如果您愿意,端口地址 (80) 可以是 8000。
  6. 之后,在浏览器中输入地址
    55.55.55.5
    ,希望您应该看到您的网络应用程序。

现在,如果您想更进一步,您可以编辑主机文件,并添加以下行:

55.55.55.5 mynewdomain.com

然后,在浏览器中输入以下地址:

mynewdomain.com

您应该会看到您的网络应用程序。注意host文件内的域名中没有添加www,因此只能通过hostname访问mynewdomain.com。不过,您可以添加它。

55.55.55.5 mynewdomain.com www.mynewdomain.com

希望这有帮助。干杯


2
投票

补充@Kakar答案,这个配置也可以使用这个来完成:

config.vm.network "private_network", type: "dhcp"

这将自动分配IP。

进一步阅读:https://www.vagrantup.com/docs/networking/private_network.html

© www.soinside.com 2019 - 2024. All rights reserved.