Службы WCF net.tcp перемещены с локального хоста на IP-адрес на новом сайте, службы не загружаются

У меня есть веб-сайт с 2 службами WCF. Работал потрясающе, пока мне не пришлось переместить их с "Веб-сайта по умолчанию" в IIS7 на выделенный веб-сайт с новым IP-адресом. Теперь я получаю сообщение об ошибке:

"... не удалось загрузить, поскольку найдено более одной конфигурации конечной точки для этого контракта. Пожалуйста, укажите предпочитаемый раздел конфигурации конечной точки по имени"

ВСЕ, что я сделал, было изменение:

net.tcp: // локальный /...

TO:

net.tcp: //10.1.2.204 /...

Я изменил каждое место в моих конфигах, которые когда-то использовали localhost для указанного IP-адреса. Новый веб-сайт настроен точно так же с соответствующими привязками net.tcp и привязан к одному IP-адресу 10.1.2.204.

Я не могу понять, что происходит. Я смотрю журналы трассировки SVC, и все, что я получаю, это куча того же самого.

Мой новый веб-сайт называется "core", тогда как ранее я размещался на "Default Web Site". Я добавил новое полное доменное имя / публичный IP-адрес для маршрутизации на этот новый сайт (в обратном направлении к указанному частному IP-адресу). Теперь мои услуги разрушены.

Я знаю, что baseAddress игнорируется при использовании хостинга IIS / WAS, поэтому я не уверен, что еще нужно проверить. Я ничего не изменил в конфигах.

Что еще я могу предоставить, чтобы помочь решить эту проблему?

-

Я также вижу это в сервисе просмотра трассировки:

Имя действия Получают байты при соединении 'Listen at' net.tcp: //hole.myserver.com /... '.'.

... но службы WCF на самом деле размещаются на этом новом "базовом" веб-сайте, который переводится на мой новый частный IP-адрес. Я изменил имена FQDN для примера. Чтобы было понятно:

Я имел 1 полное доменное имя на этом сервере, используя веб-сайт по умолчанию.

Теперь я добавил 2-е полное доменное имя для этого сервера, новый веб-сайт, второй IP-адрес. Мне кажется, что прослушивание должно быть направлено на: net.tcp: //core.myserver.com вместо net.tcp: //hole.myserver.com. Давайте представим, что имя сервера - hole.myserver.com, а мой новый веб-сайт - core.myserver.com на том же сервере.

Надеюсь, это не смущает, и вы можете понять это.

Я использую стандартный порт net.tcp 808 и привязку 808: *

-

Это первое исключение, которое я могу сказать:

Разъем подключения был прерван. Это может быть вызвано ошибкой обработки вашего сообщения или превышением тайм-аута приема удаленным хостом, или проблемой основного сетевого ресурса. Тайм-аут локального сокета был "00:00:10".

-

Ни одна из этих комбинаций не активирует службу и выдает одно и то же исключение:

net.tcp: // localhost net.tcp: // localhost: 808 net.tcp: //10.1.2.204 net.tcp: //10.1.2.204: 808

даже используя другой порт, который я сделал раньше без проблем:

net.tcp: // localhost: 75 net.tcp: //10.1.2.204: 75

ни одна из этих работ.:(

Спасибо!

1 ответ

Свои права выпускают. Щелкните правой кнопкой мыши на вашем новом сайте -> затем Редактируйте разрешения. В окне свойств нажмите вкладку " Безопасность " и кнопку " Изменить". Затем добавьте IIS_IUSRS и задайте Чтение и выполнение, список содержимого папки, разрешения на чтение. Теперь выполните iisreset и начните размещать и подключать net tcp на новом веб-сайте.

Другие вопросы по тегам