Назад | Перейти на главную страницу

IIS 10 - Как показать DNS-псевдоним / порт 80 в WSDL-url для WCF-сервиса за балансировщиком нагрузки

Наша установка IIS имеет сервер запросов приложений IIS перед тремя типами серверов IIS (механизм правил, Microfocus Cobol на IIS и «остальные приложения». Вся базовая настройка каждого сервера выполняется с помощью общего сценария (настройка IIS и подробнее). DNS-псевдонимы «обслуживаются» IIS ARR (порт 80), а затем перенаправляют запрос на сервер, на котором размещено приложение, с другим номером порта.

При доступе http://myapp.test.mycorp.com/TheApp/theService.svc на странице по умолчанию он показывает

svcutil.exe http://myapp.test.mycorp.com/TheApp/theService.svc?wsdl

что очень хорошо, но на двух других серверах - с той же базовой настройкой - будет отображаться

svcutil.exe http://theservername:theportnumber/TheApp/theService.svc?wsdl

Оба сайта привязаны только к номеру порта, а не к DNS-псевдониму (пробовал, но тогда он покажет DNS-alias: portnumber, а также предотвратит тестирование на сервере с использованием localhost, а также с использованием имени сервера)

Какие другие настройки / конфигурации в IIS могут отличаться, что объясняет, почему URL-адрес отображается по-разному на разных серверах?

Обновить

А теперь - заметил, что для .svc? Wsdl показывает псевдоним DNS и отсутствие портов. Ничего не сделано для устранения проблемы. Надеясь, что он решил все проблемы, но проверяя .asmx? Wsdl, он использует DNS-псевдоним, но добавляет номер порта. Затем проверяем еще один сервис, второй .svc - все три на одном сервере. Последняя служба показывает имя сервера и номер порта (не DNS-псевдоним).

Итак, теперь, похоже, это связано не с конфигурацией сервера, а с самими службами.