Web.config

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Web.config — это файл, определяющий параметры для ASP.NET web-приложения. По сути, файл web.config — это XML-документ. В нём хранится информация о параметрах поставщиков состояний сеансов, членства, определяются ссылки на страницы ошибок. Также web.config содержит строки соединения с базами данных, средства управления трассировкой.

Пример файла web.config[править | править код]

<configuration>
    <!--...-->
    <!--Другие разделы конфигурации-->

    <!--В этом элементе содержатся все настройки, касающиеся ASP.NET-->
    <system.web>
    <!--Содержит элемент <assemblies>, в котором перечислены все сборки, используемые данным приложением.-->
    <compilation> 
    </compilation>
    
    <!--Определяет способ идентификации клиента при запросе страниц. Определяется для всего приложения.-->
    <authentication mode="Forms">     
    </authentication>

    <!--Определяет поставщики членства-->
    <membership>     
    </membership>
     
    <!--Определяет поставщик профилей-->
    <profile>      
    </profile>
       
    <roleManager enabled="false">      
    </roleManager>

    <!--Определяет параметры страниц по-умолчанию-->
    <pages>      
    </pages>
  </system.web>
  <!--...-->
  <!--Другие разделы конфигурации-->
</configuration>

Наследование[править | править код]

В каждом web-приложении должен быть файл web.config, находящийся в его корневом каталоге. Однако дочерние каталоги могут содержать свои параметры конфигурации ASP.NET (которые отличаются от главного конфигурационного файла отсутствием некоторых разделов).

Механизм наследования файлов конфигурации ASP.NET таков
  • 1) Сначала применяются параметры из machine.config
  • 2) Затем применяются параметры из файла web.config, находящемся в корневом каталоге приложения.
  • 3) Далее, если в каком-то из каталогов приложения имеется файл web.config, то применяются параметры из него.
  • 4) Повторяется п.3, пока файлов конфигурации не будет обнаружено.

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

<configuration>
	<!--...-->
	<system.web>
		<!--...-->
	</system.web>  
	<location path="/ExampleDirectory">	
		<system.web>
			<!--Здесь идут параметры для подкаталога ExampleDirectory-->
		</system.web>
	</location>
	<!--...-->
</configuration>

Такой файл web.config играет роль двух конфигурационных файлов. Таким образом можно указывать любое количество подкаталогов и их параметров.

Примечания[править | править код]

Ссылки[править | править код]

Ресурсы по ASP.NET