Моя машина работает под управлением Windows 7 Ultimate. Вот что я сделал (успешно) до сих пор:
Однако, когда я пытаюсь перейти к http: //XXX.XX.XX.XX/index.php с моей собственной машины или с компьютера далеко и не в моей сети, в любом случае ... я ничего не получаю. Некоторое время он пытается подключиться (безуспешно), но в конце концов просто сдается.
Вот что мне интересно:
Большое спасибо заранее!
Похоже на возникшую у вас проблему HTTP.SYS.
Ниже приводится отрывок из Блог Скотта Хансельмана это описывает, как выставить IISExpress за пределами localhost. Сообщение в блоге длиннее, в нем также описывается, как подключать SSL. Но я считаю, что команды, которые я опубликовал ниже и извлеченные из его сообщения, помогут вам решить возникшую у вас проблему.
Во-первых, нам нужно сообщить HTTP.SYS на уровне ядра, что можно разрешить всем разговаривать с этим URL-адресом, сделав «Резервирование URL-адреса». Из административной командной строки:
netsh http add urlacl url=http://<LocalComputerName>:80/ user=everyone
Затем, поскольку я хочу иметь возможность разговаривать с IIS Express извне (люди в моей сети и т. Д. Не только localhost), мне нужно разрешить IIS Express через брандмауэр Windows. Я могу сделать это графически из Windows или набрать:
netsh firewall add portopening TCP 80 IISExpressWeb enable ALL
Последняя команда может не понадобиться, поскольку вы заявляете, что уже создали правило брандмауэра.
(Доступ из-за пределов вашей сети) Многие домашние интернет-провайдеры (и некоторые бизнес-провайдеры) блокируют входящий трафик на определенных сервисных портах, таких как порт 80 или 25. Обычно это делается для того, чтобы вы не могли запускать бизнес-сервисы на жилой линии из-за использования полосы пропускания. Альтернативой является запуск его на другом порту (см. Ниже).
(Доступ изнутри вашей сети) Ситуация, которую вы описываете, звучит как шпилька NAT. Вот хороший высокоуровневый обзор Hairpin NAT. Вам нужно будет добавить правила NAT к вашему маршрутизатору, чтобы трафик, предназначенный для вашего внешнего IP-адреса, всегда проходил через ваш маршрутизатор, а не напрямую от хоста к хосту внутри вашей сети. Предостережение: ваш маршрутизатор может не справиться с этой задачей.
Изменить привязка порта в IIS, затем перезапустите веб-сайт.
У меня такая же проблема. Брандмауэр Windows блокирует доступ. Выключите и проверьте еще раз. Думаю, это сработает.