Unterstützen mehrerer IIS-SitebindungenSupporting Multiple IIS Site Bindings

Wenn ein Windows Communication Foundation (WCF)-Dienst unter Internetinformationsdienste (IIS) 7.0 gehostet wird, möchten möglicherweise mehrere Basisadressen bereitstellen, die auf derselben Website das gleiche Protokoll verwenden.When hosting a Windows Communication Foundation (WCF) service under Internet Information Services (IIS) 7.0, you may want to provide multiple base addresses that use the same protocol on the same site. Auf diese Weise kann ein Dienst auf unterschiedliche URIs reagieren.This allows the same service to respond to a number of different URIs. Dies ist hilfreich, wenn zum Hosten eines Diensts, die überwacht werden sollen http://www.contoso.com und http://contoso.com. Es ist auch hilfreich, einen Dienst zu erstellen, der über eine Basisadresse für interne Benutzer und eine separate Basisadresse für externe Benutzer verfügt.This is useful when you want to host a service that listens on http://www.contoso.com and http://contoso.com. It is also useful to create a service that has a base address for internal users and a separate base address for external users. Zum Beispiel: http://internal.contoso.com und http://www.contoso.com.For example: http://internal.contoso.com and http://www.contoso.com.

Hinweis

Diese Funktionalität ist nur bei Verwendung des HTTP-Protokolls verfügbar.This functionality is only available using the HTTP protocol.

Mehrere BasisadressenMultiple Base Addresses

Diese Funktion ist nur verfügbar für WCF-Dienste, die unter IIS gehostet werden.This feature is only available to WCF services that are hosted under IIS. Diese Funktion ist standardmäßig nicht aktiviert.This feature is not enabled by default. Aktivieren Sie hinzufügen müssen der multipleSiteBindingsEnabled -Attribut auf der <serviceHostingEnvironment>-Element in der Datei "Web.config"-Datei ein, und legen Sie sie auf true, wie im folgenden Beispiel gezeigt.To enable it you must add the multipleSiteBindingsEnabled attribute to the <serviceHostingEnvironment> element in your Web.config file and set it to true, as shown in the following example.

<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>  

Beim Hosten eines WCF-Diensts unter IIS erstellt IIS eine Basisadresse für basierend auf den URI in das virtuelle Verzeichnis, das die Anwendung enthält.When hosting a WCF service under IIS, IIS creates one base address for you based on the URI to the virtual directory that contains the application. Sie können zusätzliche Basisadressen hinzufügen, die das gleiche Protokoll verwenden. Verwenden Sie dazu den Internetinformationsdienste-Manager, um der Website eine oder mehrere Bindungen hinzuzufügen.You can add additional base addresses that use the same protocol by using Internet Information Services Manager to add one or more bindings to your Web site. Geben Sie für jede Bindung ein Protokoll (HTTP oder HTTPS), eine IP-Adresse, einen Port und einen Hostnamen an.For each binding specify a protocol (HTTP or HTTPS), an IP address, a port, and a host name. Weitere Informationen zur Verwendung von Internetinformationsdienste-Manager finden Sie unter IIS-Manager (IIS 7).For more information about using Internet Information Services Manager, see IIS Manager (IIS 7). Weitere Informationen zum Hinzufügen von Bindungen auf einer Website finden Sie unter Erstellen einer Website (IIS 7)For more information about adding bindings to a site, see Create a Web Site (IIS 7)

Angeben mehrerer Basisadressen für die gleiche Website wirkt sich auf den Inhalt der WCF-Hilfeseite Importschema und die vom Dienst generierten WSDL/MEX-Informationen aus.Specifying multiple base addresses for the same site affects the content of the WCF Help page, importing schema, and the WSDL/MEX information generated by the service. Die WCF-Hilfeseite zeigt die Befehlszeile verwenden, um einen WCF-Client zu generieren, der mit dem Dienst kommunizieren können.The WCF Help page displays the command line to use to generate a WCF client that can communicate with the service. Diese Befehlszeile enthält nur die erste Adresse, die in der IIS-Bindung für die Website angegeben ist.This command line contains only the first address specified in the IIS binding for the Web site. Genauso wird beim Importieren des Schemas nur die erste Basisadresse verwendet, die in der IIS-Bindung angegeben ist.Similarly when importing schema, only the first base address specified in the IIS binding is used. WSDL- und MEX-Daten enthalten alle Basisadressen, die in den IIS-Bindungen angegeben sind.WSDL and MEX data contain all the base addresses specified in the IIS bindings.

Warnung

Wenn ein Dienst über zwei Basisadressen verfügt, eine für interne Benutzer und eine für externe Benutzer, bedeutet dies, dass beide Basisadressen in den vom Dienst generierten WSDL/MEX-Informationen angegeben wurden.This means that if a service has two base addresses, one for internal users and one for external users, both are specified in the WSDL/MEX information generated by the service.