Как посетить сайт, размещенный на моей виртуальной машине?
Я пытаюсь выучить Джанго. Я установил стек Bitnami Django в Virtualbox с Ubuntu 64.
Моя проблема в том, что когда я запускаю сервер, я не знаю, как зайти на веб-страницу с моего хост-компьютера (Windows 7, 64).
Нужно ли выполнять сложные настройки, чтобы посетить размещенный веб-сайт?
2 ответа
Это зависит от конфигурации сетевого адаптера виртуальной машины.
Проще всего, если у вас есть мостовой адаптер, поэтому гостевая виртуальная машина выглядит как еще одна машина в вашей сети. Если гость настроен на получение IP-адреса через DHCP (в значительной степени по умолчанию), просто укажите ваш браузер на http://IP-ADDRESS-OF-GUEST/
и это должно работать.
Если в вашей виртуальной машине есть сетевой адаптер с поддержкой NAT, это означает, что он работает так, как если бы гостевая ОС находилась за маршрутизатором. Доступ к веб-серверу все еще возможен, но вам нужно сделать "страшный" порт вперед.
Прочтите руководство VB ( Настройка переадресации портов с NAT). Но в качестве примера приведем командную строку, которая создает перенаправленный порт (имя виртуальной машины - это имя вашей виртуальной машины):
vboxmanage modifyvm "VM name" --natpf1 "guesthttp,tcp,,80,,80"
Теперь вы должны связаться с вашим веб-сервером по адресу http://localhost/
или же http://127.0.0.1/
или даже http://IP-ADDRESS-OF-HOST/
(но последний требует, чтобы ваш брандмауэр хоста был настроен на получение трафика через порт 80).
Существует также графический способ переадресации порта, вы можете найти его в разделе конфигурации виртуального адаптера NAT-ted. Настройка довольно проста, но вы можете обратиться к этой статье HTG по этому вопросу.
Это больше похоже на Windows, чем на Ubuntu. Если бы это был linux box, на котором размещалась ваша виртуальная машина, вы могли бы сделать переадресацию портовssh user@<ip of virtual machine> -L9999:localhost:<port hosted on>
Таким образом, вы можете перейти по адресу http:// localhost:9999 и оказаться на сайте, размещенном на вашей виртуальной машине. Извините, я не знаю, как это сделать из окон, так как я не уверен, как замазка может справиться с этим =\
Хотя я знаю, что когда на машине есть jenkins, на котором размещен веб-интерфейс через порт 8080, если вы находитесь на той же локальной сети, вы можете перейти на.local:8080, так что, возможно, что-то подобное будет работать. Чтобы узнать ваше имя avahi или просто установить его вручную, отредактируйте /etc/avahi/avahi-daemon.conf и измените строку имени хоста так, чтобы она соответствовала любому имени, которое вы хотите, и запустите sudo service avahi-daemon restart
Также убедитесь, что при установке имени хоста не должно быть пробелов по обе стороны от знака =