Невозможно опубликовать службу WCF для хостов, находящихся локально, из мастера публикации BizTalk WCF

Меня это беспокоит долгое время, и меня удивляет, что я не могу найти ничего об этом в Интернете.

У меня есть оркестровка BizTalk, которую я хотел бы представить как службу WCF. Я открываю мастер публикации службы BizTalk WCF, выбираю конечную точку службы, WCF-WSHttp и Включить конечную точку метаданных, выбираю публикацию оркестровки BizTalk как службу WCF, затем выбираю сборку, затем порт, задаю пространство имен. Все это работает нормально, теперь на шаге «Местоположение службы WCF» я нажимаю «Обзор» на хосте, определенном в моем файле хостов, отличном от локального хоста, и получаю сообщение об ошибке Хост «...» недействителен. Служба World Wide Web (W3SVC) на хосте «...» недоступна. Доступ запрещен.

http://files.victorfeinman.com/files/Photos/BTSDeployError.png

Я много пробовал здесь, работая от имени администратора, но это не помогло. Я пробовал публиковать на удаленных серверах по именам хостов, которые я определил в своем файле хоста - это работает. Я пробовал публиковать с других машин на мою локальную машину - это работает. Но я не могу публиковать на своей локальной машине, используя любое имя хоста, кроме localhost.

Мне кажется, что отсутствие онлайн-контента по этой «проблеме» означает, что это что-то тривиальное. Я надеюсь, что это так, хотя и немного смущает.

Я использую BizTalk 2010, Windows 7, Visual Studio 2010.


ОБНОВЛЕНИЕ: я протестировал публикацию на удаленном сервере с именем хоста services.xyz.com, и хотя я мог перейти на сайт в мастере, мастер все же поместил новое приложение и службу в «Веб-сайт по умолчанию» удаленного компьютера. Затем я попытался добавить дополнительную привязку с уникальным портом к сайту services.xyz.com и снова попытался выполнить развертывание, на этот раз указав уникальный порт и Vola, он работал так, как мне нужно (для удаленного сервера). Новая служба WCF создана по желаемому пути на основе правильного сайта. Здорово. Следующее, что я сделал, это добавил еще одну привязку к моему локальному сайту, на котором я пытаюсь опубликовать уникальный порт, все же установив имя хоста на somehost.com. Это не изменило того факта, что я не мог «Обзор ...» с помощью somehost.com, однако в поле «Местоположение» я попытался ввести уникальный порт (например, так .. http://localhost:8080/products) и закончил мастер публикации . К моему удивлению, это действительно сработало. Служба WCF, которую я хотел, была создана на сайте и в нужном мне месте файла. Даже если у целевого сайта не было привязки для «localhost» или пустого (любого) имени хоста.


person VFein    schedule 07.09.2012    source источник
comment
Вы пробовали использовать localhost вместо сервисов? Я не знаю, добавляет ли Windows автоматически localhost или он должен быть в файле hosts. Это обычный способ ссылки на локальный компьютер без жесткого кодирования имени компьютера в URL-адресе.   -  person Jay    schedule 07.09.2012
comment
Да, я пробовал это, и это работает, так как я могу просматривать свои локальные сайты в IIS, однако, когда я пытаюсь опубликовать на локальном сайте, отличном от веб-сайта по умолчанию, он все равно публикуется на веб-сайте по умолчанию - это моя проблема. См. Мое обновление, чтобы обойти эту проблему.   -  person VFein    schedule 07.09.2012


Ответы (1)


Это может быть проблема с брандмауэром или сетью.

Когда вы используете localhost, он переходит на IP-адрес обратной петли 127.0.0.1.

Когда вы используете имя сервера, оно переходит на внешний IP-адрес.

Так же "." и пробелы после службы могут доставлять вам некоторые проблемы.

person Shiraz Bhaiji    schedule 09.09.2012
comment
Сожалеем, что фактическое имя хоста было отредактировано, не обращайте внимания на расширение "." и пробелы. Кроме того, имя хоста - это не имя сервера, это имя, которое я назначил IP-адресу обратной связи. - person VFein; 11.09.2012