HttpListener не получает удаленные запросы, даже если брандмауэр выключен и все префиксы зарегистрированы - PullRequest
1 голос
/ 03 апреля 2012

Я написал сервер, использующий HttpListener, который отлично работает для запросов, отправленных с того же компьютера, но даже не получает запросы, отправленные с удаленного компьютера. Я попытался использовать (включая регистрацию с помощью netsh) следующие префиксы: http://*:8080/, http://+:8080/, http://localhost:8080/, и конкретный IP-адрес хост-компьютера, за которым следует порт 8080. (Я также убедился, что нет другие приложения использовали 8080.) Я открыл соответствующие порты в брандмауэре, и когда это не сработало, я отключил брандмауэр, просто чтобы посмотреть, была ли это проблема брандмауэра, и это также не повлияло на проблему. Понятия не имею, что попробовать дальше, помогите!

Кроме того, машиной, на которой работает этот веб-сервис, является веб-служба Amazon Microsoft Windows Server 2008 R2 с экземпляром SQL Server Express и IIS EC2.

Ответы [ 2 ]

1 голос
/ 03 мая 2017

Если вы используете бесплатный экземпляр уровня EC2 уровня AWS, добавление указанного общего эластичного IP-адреса в качестве префиксов не будет работать для вас, даже если у вас открыты порт локального межсетевого экрана и порты в группе безопасности.HTTPListener должен быть связан с общедоступным DNS, предоставленным AWS.Тогда только это будет работать.

0 голосов
/ 03 апреля 2012

Для будущих пользователей более детальным решением было добавить правило входящего настраиваемого TCP, включающее порт 8080 в поле «Диапазон портов:», в группу безопасности, используемую моим экземпляром EC2.

  • спасибо @shashankaholic за указание на это
...