2016-04-12 3 views
0

Я использую веб-проект asp.net5, размещенный в консольном приложении. Он отлично работает на локальном хосте, но когда я пытаюсь получить доступ к этой форме на сайте другой машины, например http://192.168.1.5:5432 и т. Д., Я получаю ERR_CONNECTION_TIMED_OUT. Я пытался несколько arouches, как chaning localhost для машинного имени, но никто из них не работает.asp.net5 selfhosted WebListener timeout

hosting.ini файл:

server=Microsoft.AspNet.Server.WebListener 
server.urls=http://localhost:5432 

Есть ли решение этой проблемы, или хостинг в консольном приложении сделано только для целей развития

+0

Излишне говорить, что порт открыт. – Brivvirs

+0

Ожидается, потому что вы привязали его к localhost, поэтому он будет слушать только соединения с 127.0.0.1 или localhost – Tseng

ответ

1

Потому что вы связали ваш слушатель LOCALHOST это будет только принимать соединения с (и из) локального хоста. localhost здесь особенный, поскольку он (по крайней мере, для Kestrel) всегда привязывается к локальному/loopback-интерфейсу. Все, кроме localhost, привязывается ко всем сетевым интерфейсам.

Если вы хотите, чтобы к нему были доступны все IP-адреса и были агностиком хоста/домена, вы должны использовать http://0.0.0.0:5432 (или, альтернативно, http://*:5432). Если вы делаете http://www.example.com:5432, тогда он будет доступен для всех IP-адресов, но только если имя хоста было введено в браузере, поэтому http://192.168.1.5:5432 все равно не будет работать (не удалось проверить последний в настоящий момент, но * wild card url должен работать) ,

Таким образом, вы можете запускать несколько основных приложений asp.net на одном сервере, но с разными хостами/доменами.

Вы также можете запускать два приложения в одном домене и том же порту, если вы привязываете их к разным конечным точкам.

Например, http://www.example.com/App1 и http://www.example.com/App2, используют тот же порт и тот же домен, но разные конечные точки и два приложения.

Редактировать

информации Добавки для пользователей Windows. Возможно, вам придется добавить исключение для изменения локальных параметров безопасности, чтобы позволить dnx связываться с этим портом/хостом (или запускать его как администратор, который будет обескуражен), особенно при использовании хостов и портов с низким номером (соответственно 80 и 443).

netsh http add iplisten ipaddress=0.0.0.0:80 
netsh http add urlacl url=http://+:80/ user=Example\Username 

Это позволит приложениям для пользователя «Псевдоним» в области «Пример», чтобы начать прослушивание на порту 80.