2012-03-20 2 views
1

Я могу использовать HttpListener для прослушивания запросов, поступающих с того же компьютера, но я не понял, как заставить его слушать внешние запросы.HttpListener не прослушивается вне хост-компьютера?

Мой префикс: "http://192.168.103.82:5000/"

Я также попытался: "HTTP: // *: 5000 /"

Я могу напечатать мой местный сетевой IP-адрес в браузер и получить ответ. Однако, если я делаю то же самое с другого компьютера в одной сети, нет такой удачи.

Есть ли какая-то дополнительная конфигурация, которую мне нужно сделать? Это конкретная проблема ОС? Я запускаю Windows 7 Home.

ответ

5

Вам необходимо разрешить использование порта 5000 через брандмауэр Windows.

3

Из команды: netsh http add urlacl

Следующие команды доступны:

Команды в этом контексте: добавить cacheparam - Добавляет HTTP кэширования службы параметр добавить iplisten - Добавляет IP адрес в IP слушать список. add sslcert - добавляет привязку сертификата SSL-сервера для адреса и порта IP . add timeout - добавляет глобальный тайм-аут к службе . add urlacl - добавляет запись о резервировании URL. PS C: \ Users \ dwalker> netsh http add urlacl?

Использование: добавить urlacl [URL =] [[пользователь =] [[слушать =] да | нет [делегат =] да | нет] | [SDDL =] ]

Параметры:

Tag  Value 
url  - The fully qualified URL 
user  - The user or user-group name 
listen - One of the following values: 
      yes: Allow the user to register URLs. This is the Default value. 
      no: Deny the user from registering URLs 
delegate - One of the following values: 
      yes: Allow the user to delegate URLs 
      no: Deny the user from delegating URLs. This is the default value. 
sddl  - SDDL string that describes the DACL 

Примечание: Эта команда сохраняет за собой URL для пользователей без прав администратора и счетов. DACL можно указать, используя имя учетной записи NT с параметрами прослушивания и делегирования или с использованием строки SDDL.

Пример:

 add urlacl url=http://+:80/MyUri user=DOMAIN\user 
    add urlacl url=http://www.contoso.com:80/MyUri user=DOMAIN\user listen=yes 
    add urlacl url=http://www.contoso.com:80/MyUri user=DOMAIN\user delegate=no 
    add urlacl url=http://+:80/MyUri sddl=... 

пример: netsh http add urlacl user=Everyone url="http://192.168.103.82:5000/"