<baseAddressPrefixFilters>
パス スルー フィルターを指定する構成要素のコレクションを表します。パス スルー フィルターには、インターネット インフォメーション サービス (IIS) で Windows Communication Foundation (WCF) アプリケーションをホストする場合に適切な IIS バインドを選択する機構が用意されています。
注意 : |
---|
<baseAddressPrefixFilters> は localhost を認識しません。代わりに、コンピューターの完全修飾名を使用します。 |
スキーマの階層
<system.serviceModel>
<serviceHostingEnvironment>
構文
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix="string"/>
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
属性と要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
なし。
子要素
要素 | 説明 |
---|---|
サービス ホストによって使用されるベース アドレスのプレフィックス フィルターを指定する構成要素を追加します。 |
親要素
要素 | 説明 |
---|---|
環境をホストするサービスがインスタンス化する特定のトランスポートの型を定義します。 |
解説
プレフィックス フィルターは、サービスによって使用される URI を、共有ホスティング プロバイダーが指定できるようにする手段を提供します。これにより、共有ホストは、同じサイト上の同じスキームに対して、別々のベース アドレスを使用して複数のアプリケーションをホストできるようになります。
IIS Web サイトは、仮想ディレクトリを含む仮想アプリケーションのコンテナーです。サイト内のアプリケーションには、1 つ以上の IIS バインディングからアクセスできます。IIS バインディングは、バインディング プロトコルとバインディング情報という 2 つの情報を提供します。バインディング プロトコル (HTTP など) は通信を行うスキームを定義し、バインディング情報 (IP アドレス、ポート、ホスト ヘッダーなど) にはサイトにアクセスするために使用するデータが含まれます。
IIS では、サイトごとに複数の IIS バインディングを指定できるので、各スキームに複数のベース アドレスが定義されることがあります。これに対して、サイトでホストされる WCF サービスでは、スキームごとに 1 つのベース アドレスにしかバインドできません。そこで、プレフィックス フィルター機能を使用すると、ホストされるサービスの必要なベース アドレスを選択できます。IIS によって指定される受信ベース アドレスは、オプションのプレフィックス リスト フィルターに基づいてフィルター処理されます。
たとえば、サイトに次のベース アドレスが含まれているとします。
http://testl.fabrikam.com/Service.svc
http://test2.fabrikam.com/Service.svc
次の構成ファイルを使用して、appdomain レベルでプレフィックス フィルターを指定できます。
<system.serviceModel>
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix=”net.tcp://test1.fabrikam.com:8000”/>
<add prefix=”http://test2.fabrikam.com:9000”/>
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
</system.serviceModel>
この例では、net.tcp://test1.fabrikam.com:8000
と http://test2.fabrikam.com:9000
が、対応するスキームに渡される唯一のベース アドレスです。
既定では、プレフィックスを指定しない場合、すべてのアドレスが渡されます。プレフィックスだけを指定すると、そのスキームに一致するベース アドレスを渡すことができます。
注 : |
---|
フィルターでワイルドカードはサポートされません。また、IIS が提供する baseAddresses には、baseAddressPrefixFilters リストに存在しない他のスキームにバインドされたアドレスが含まれる場合があります。これらのアドレスはフィルターで除外されません。 |
参照
リファレンス
BaseAddressPrefixFilterElementCollection
ServiceHostingEnvironmentSection
ServiceHostingEnvironment