Веб-сервер на виртуальной машине Azure - PullRequest
0 голосов
/ 10 ноября 2018

Я установил виртуальную машину Windows 2012 R2 (бесплатный уровень) и включил все порты для внешней связи (включая порт 80).

Я вошел на свою виртуальную машину и установил веб-сервер nginx (я также пытался запустить сервер разработки на python).

Я могу получить доступ к веб-сайту изнутри на виртуальной машине (используя 127.0.0.1 или внутренний адрес сервера 10.1 ....), но при попытке доступа к нему извне, используя внешний IP-адрес (который также является IP-адресом). адрес, который я использовал для входа на свой сервер с использованием RDP) Я не получил ответа.

Не могли бы вы помочь мне понять, что я делаю неправильно?

Спасибо!

1 Ответ

0 голосов
/ 11 ноября 2018

Как указывает @evilSnobu из своих комментариев, краткий ответ заключается в том, чтобы разрешить TCP-порт 80 в брандмауэре Windows на самой виртуальной машине Windows.

Обычно мы можем войти в эту виртуальную машину Windows и запустить команду CMD netsh advfirewall set allprofiles state off, чтобы временно отключить брандмауэр Windows. Затем мы можем использовать инструмент telnet , чтобы проверить, можно ли подключить порт TCP 80.

Когда мы сталкиваемся с той же проблемой, нет ответа за пределами виртуальной машины Azure. мы можем попробовать одно или несколько из следующих действий:

  • Существует также NSG на уровне подсети или NIC, который не пропускает данные.
  • На самой виртуальной машине установлен брандмауэр (брандмауэр Windows и т. Д.)
  • На этом порте ничего не слушается. Он должен прослушивать 0.0.0.0 вместо 127.0.0.1, когда вы используете netstat -ano в Windows CMD.
  • Служба не запускается при проверке прослушивания порта.
  • Исходящий трафик с определенным портом запрещен с локальных компьютеров.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...