<baseAddressPrefixFilters>
Представляет коллекцию элементов конфигурации, определяющих сквозные фильтры, которые предоставляют механизм для выбора соответствующих привязок служб IIS при размещении приложения Windows Communication Foundation (WCF) в СЛУЖБАх IIS.
Предупреждение
<BaseAddressPrefixFilters> не распознает "localhost"; вместо этого используется полное имя компьютера.
<Конфигурации>
<system.serviceModel>
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
Синтаксис
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix="String" />
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Атрибуты
Отсутствует.
Дочерние элементы
Элемент | Описание |
---|---|
<добавление> | Добавляет элемент конфигурации, который задает префиксный фильтр для базовых адресов, используемых узлом службы. |
Родительские элементы
Элемент | Описание |
---|---|
<serviceHostingEnvironment> | Определяет, какой тип среда размещения служб создает для конкретного транспорта. |
Комментарии
Префиксный фильтр предоставляет способ для общих поставщиков услуг размещения задать, какие URI должны использоваться службой. Это дает возможность общим узлам размещать несколько приложений с разными базовыми адресами для одной схемы на одном узле.
Веб-узлы IIS являются контейнерами виртуальных приложений, содержащими виртуальные каталоги. Доступ к приложению на узле можно осуществлять через одну или несколько привязок службы IIS. Привязки IIS предоставляют два блока данных: протокол привязки и данные привязки. Протокол привязки (например, HTTP) определяет схему, посредством которой осуществляется связь, а данные привязки (например, IP-адрес, порт, заголовок узла) содержат сведения, используемые для доступа к узлу.
IIS поддерживает задание нескольких привязок IIS для каждого узла, что позволяет использовать несколько базовых адресов для каждой схемы. Так как служба WCF, размещенная на сайте, допускает привязку только к одному базовому адресу для каждой схемы, можно использовать функцию фильтра префиксов, чтобы выбрать необходимый базовый адрес размещенной службы. Входящие базовые адреса, предоставляемые IIS, фильтруются с использованием дополнительного фильтра списка префиксов.
Например, сайт может содержать следующие базовые адреса:
http://testl.fabrikam.com/Service.svc
http://test2.fabrikam.com/Service.svc
Для задания префиксного фильтра на уровне домена приложений можно использовать следующий файл конфигурации.
<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, могут присутствовать адреса, привязанные к другим схемам, не представленным в списке baseAddressPrefixFilters
. Эти адреса не фильтруются.