Suporte a várias ligações de site do IIS
Ao hospedar um serviço WCF (Windows Communication Foundation) em Serviços de Informações da Internet (IIS) 7.0, convém fornecer vários endereços base que usam o mesmo protocolo no mesmo site. Isso permite que o mesmo serviço responda a vários URIs diferentes. Isso é útil quando você deseja hospedar um serviço que escuta e http://www.contoso.com
http://contoso.com
. Também é útil criar um serviço que tenha um endereço base para usuários internos e um endereço base separado para usuários externos. Por exemplo: http://internal.contoso.com
e http://www.contoso.com
.
Nota
Essa funcionalidade só está disponível usando o protocolo HTTP.
Vários endereços base
Esse recurso só está disponível para serviços WCF hospedados no IIS. Por predefinição, esta caraterística não está ativada. Para habilitá-lo, você deve adicionar o multipleSiteBindingsEnabled
atributo ao <serviceHostingEnvironment>
elemento no arquivo Web.config e defini-lo como true
, conforme mostrado no exemplo a seguir.
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
Ao hospedar um serviço WCF no IIS, o IIS cria um endereço base para você com base no URI para o diretório virtual que contém o aplicativo. Você pode adicionar endereços base adicionais que usam o mesmo protocolo usando o Gerenciador dos Serviços de Informações da Internet para adicionar uma ou mais associações ao seu site. Para cada ligação, especifique um protocolo (HTTP ou HTTPS), um endereço IP, uma porta e um nome de host. Para obter mais informações sobre como usar o Gerenciador dos Serviços de Informações da Internet, consulte Gerenciador do IIS (IIS 7). Para obter mais informações sobre como adicionar associações a um site, consulte Criar um site (IIS 7)
A especificação de vários endereços base para o mesmo site afeta o conteúdo da página de Ajuda do WCF, o esquema de importação e as informações WSDL/MEX geradas pelo serviço. A página Ajuda do WCF exibe a linha de comando a ser usada para gerar um cliente WCF que possa se comunicar com o serviço. Essa linha de comando contém apenas o primeiro endereço especificado na associação do IIS para o site. Da mesma forma, ao importar o esquema, somente o primeiro endereço base especificado na associação do IIS é usado. Os dados WSDL e MEX contêm todos os endereços base especificados nas associações do IIS.
Aviso
Isso significa que, se um serviço tiver dois endereços base, um para usuários internos e outro para usuários externos, ambos serão especificados nas informações WSDL/MEX geradas pelo serviço.