Создание параметров конфигурации приложения и каталога в приложении 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.

Использование элемента расположения в файле Конфигурации Machine.config

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

Элемент <location> содержит два атрибута и path allowOverride. Атрибут 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> элемента указывает виртуальный каталог или имя файла, в котором применяются элементы конфигурации расположения. В следующем примере показана часть файла app 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>

Ссылки