Web.config

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

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

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

 0 <configuration>
 1     <!--...-->
 2     <!--Другие разделы конфигурации-->
 3 
 4     <!--В этом элементе содержатся все настройки, касающиеся ASP.NET-->
 5     <system.web>
 6     <!--Содержит элемент <assemblies>, в котором перечислены все сборки, используемые данным приложением.-->
 7     <compilation> 
 8     </compilation>
 9     
10     <!--Определяет способ идентификации клиента при запросе страниц. Определяется для всего приложения.-->
11     <authentication mode="Forms">     
12     </authentication>
13 
14     <!--Определяет поставщики членства-->
15     <membership>     
16     </membership>
17      
18     <!--Определяет поставщик профилей-->
19     <profile>      
20     </profile>
21        
22     <roleManager enabled="false">      
23     </roleManager>
24 
25     <!--Определяет параметры страниц по-умолчанию-->
26     <pages>      
27     </pages>
28   </system.web>
29   <!--...-->
30   <!--Другие разделы конфигурации-->
31 </configuration>

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

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

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

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

 1 <configuration>
 2 	<!--...-->
 3 	<system.web>
 4 		<!--...-->
 5 	</system.web>  
 6 	<location path="/ExampleDirectory">	
 7 		<system.web>
 8 			<!--Здесь идут параметры для подкаталога ExampleDirectory-->
 9 		</system.web>
10 	</location>
11 	<!--...-->
12 </configuration>

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

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

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

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