Создание параметров конфигурации для конкретного приложения и каталога в приложении ASP.NET

В этой статье описывается, как настроить параметры конфигурации для конкретных приложений и каталогов в ASP.NET.

Исходная версия продукта: ASP.NET
Исходный номер базы знаний: 815174

Сводка

ФайлWeb.config находится в корневом каталоге приложения ASP.NET. В файлеWeb.config указываются сведения о конфигурации, относящиеся к приложению. Вы также можете задать параметры конфигурации для каждого каталога. Это можно сделать двумя способами.

  • Раздайте несколько Web.config файлов в каталоги в приложении. Добавьте файлWeb.config в каталог приложения ASP.NET с параметрами, которые переопределяют параметры в файле Web.config более высокого уровня или в файле конфигурации системного компьютера (Machine.config).

  • Добавьте параметры для каждого каталога или файла непосредственно в приложение Web.config файл. Этот метод использует один Web.config файл для включения параметров конфигурации для каждого каталога. Этот метод также можно использовать в файлеMachine.config для принудительного применения параметров конфигурации в веб-приложениях ASP.NET, а затем остановить переопределение параметров Web.config файлов Machine.config .

Использование элемента location в файле Machine.config

Чтобы указать параметры, применяемые к веб-приложению или каталогу <location> , можно добавить элемент в <configuration> элемент системного Machine.config файла. Это полезно при централизации параметров конфигурации в одном файле. Он также полезен в средах веб-размещения, чтобы задать определенные параметры конфигурации для отдельных веб-приложений.

Элемент <location> содержит два атрибута и pathallowOverride. Атрибут path определяет сайт или виртуальный каталог, охватывающий параметры конфигурации. Чтобы указать, что параметры в элементе <location> применяются к веб-сайту по умолчанию, задайте path атрибуту значение Default Web Site. Чтобы указать, что параметры применяются к приложению с именем MyApp на веб-сайте по умолчанию, присвойте атрибуту path значение Default Web Site/MyApp.

allowOverride Если атрибут имеет значение false, файлыWeb.config в каталогах веб-приложений не могут переопределить параметры, указанные в элементе <location> . Это полезный параметр в средах, в которых разработчикам приложений необходимо ограничить настройку веб-приложения. В следующем примере показана часть файлаMachine.config . Файл требует проверки подлинности для доступа к приложению MyApp на веб-сайте по умолчанию и не может быть переопределен параметрами в файлеWeb.config .

<configuration>
    <location path="Default Web Site/MyApp" allowOverride="false">
        <system.web>
            <authorization>
                <allow users="?" />
            </authorization>
        </system.web>
    </location>
</configuration>

Использование элемента location в файле Web.config

Чтобы указать параметры, которые применяются к определенному приложению или каталогу <location> , добавьте элемент в <configuration> элемент приложения Web.config файла. Элемент <location> обычно содержит <system.web> элемент и другие элементы конфигурации точно так же, как они используются в файлеWeb.config . Атрибут path<location> элемента указывает виртуальный каталог или имя файла, к которому применяются элементы конфигурации расположения. В следующем примере показана часть файла приложенияWeb.config , указывающая настраиваемые сообщения об ошибках для виртуального каталога форума.

<configuration>
    <location path="forum" >
        <system.web>
            <customErrors mode="RemoteOnly" defaultRedirect="forum-error.aspx">
                <error statusCode="404" redirect="forum-file-not-found.aspx" />
            </customErrors>
        </system.web>
    </location>
</configuration>

Ссылки