Все приложения .NET Framework наследуют базовые параметры конфигурации и параметры по умолчанию от файла systemroot\Microsoft\.NET\Framework\номер_версии\CONFIG\Machine.config. Файл Machine.config содержит параметры конфигурации на стороне сервера. Некоторые из этих параметров не могут быть переопределены файлами конфигурации, находящимися ниже в иерархии.
Machine.config - Содержит настройки всего сервера. Настройки, находящиеся в файле Machine.config, наследуются всеми остальными файлами конфигурации .NET, включая файлы конфигурации IIS.
Клиентские приложения .NET (имя_приложения.config для переопределения унаследованных параметров. Приложения ASP.NET для переопределения унаследованных параметров используют файлы конфигурации Web.config.
В корне иерархии конфигурации ASP.NET находится корневой файл Web.config, каталог размещения которого совпадает с размещением файла Machine.config. Корневой файл Web.config наследует все параметры от файла Machine.config. Корневой файл Web.config содержит параметры, применяемые ко всем приложениям ASP.NET, выполняющим определенную версию платформы .NET Framework. Поскольку все приложения ASP.NET наследуют параметры конфигурации по умолчанию от корневого файла Web.config, необходимо создать файл Web.config только для тех параметров, которые переопределяют параметры по умолчанию.
Web.config (корневой уровень) - Позволяет определять настройки для отдельных веб-узлов, веб-приложений или виртуальных и физических каталогов. Этот файл можно хранить в том же каталоге, что и код или содержимое.
Данный файл можно использовать для перезаписи настроек, которые наследуются от более высоких уровней иерархии конфигурации, а также для блокировки унаследованных настроек, чтобы они не могли быть заменены настройками конфигурации более низких уровней.
Web.config (уровень приложений) - Позволяет определять настройки для отдельных веб-узлов, веб-приложений или виртуальных и физических каталогов. Этот файл можно хранить в том же каталоге, что и код или содержимое.
Данный файл можно использовать для перезаписи настроек, которые наследуются от более высоких уровней иерархии конфигурации, а также для блокировки унаследованных настроек, чтобы они не могли быть заменены настройками конфигурации более низких уровней.
уровни расположения файла в иерархии конфигурации
| Уровень конфигурации | Имя файла | Описание файла |
|---|---|---|
| Сервер | Machine.config |
Файл Machine.config содержит схему ASP.NET для всех веб-приложений сервера. Этот файл находится в верхней части иерархии слияния конфигураций. |
| Корневой файл | Web.config |
Серверный файл Web.config хранится в том же каталоге, что и файл Machine.config и содержит значения по умолчанию для большинства сценариев конфигурации system.web. Во время выполнения слияние этого файла осуществляется вторым с начала в иерархии конфигурации. |
Файл Web.config |
Файл Web.config определенного веб-узла содержит параметры, относящиеся к веб-узлу и наследующиеся в нижнем направлении для всех приложений ASP.NET и вложенных папок узла. |
|
| Корневой каталог приложения ASP.NET | Файл Web.config |
Файл Web.config определенного приложения ASP.NET расположен в корневом каталоге приложения и содержит параметры, относящиеся к веб-узлу и наследующиеся в нижнем направлении для всех вложенных папок ветви. |
| Вложенная папка приложения ASP.NET | Файл Web.config |
Файл Web.config определенной |
| Каталог клиентского приложения | Название_файла.config |
Файл Название_файла.config содержит параметры клиентского приложения Windows (не веб-приложения). |
При первом запуске веб-приложения исполняющая среда создает кэш действующих параметров веб-приложения, объединив параметры из разных конфигурационных файлов следующим образом:
Machine.config.Web.config, переопределяющие ранее кэшированные параметры из файла Machine.config.Web.config, параметры из него заносятся в кэш, переопределяя ранее кэшированные одноименные параметры.Web.config, параметры из него также добавляются в кэш, переопределяя ранее кэшированные параметры. В итоге кэш заполняется параметрами, применяемыми к веб-сайту.Web.conifg, содержащие параметры, специфичные для файлов и папок отдельного подкаталога. Для определения действующих параметров папки сначала читаются Web.config, расположенного в этой папке, которые и определяют окончательные параметры.Так как файлы конфигурации являются файлами XML, их можно открывать и редактировать с помощью любого текстового или XML-редактора. Допустимо также использовать оснастку .NET Framework 2.0 Configuration для консоли Microsoft Management Console (
Кроме того, в Visual Studio 2005 имеется утилита Web Site Administration, позволяющая изменять многие параметры конфигурационных файлов. Чтобы запустить ее, выберите команду меню Website | ASP.NET Configuration.

Утилита Web Site Administration позволяет редактировать конфигурационные файлы следующих категорий:
Эти параметры помогают настраивать параметры безопасности веб-сайта. Сюда можно добавлять пользователей, роли и разрешения на доступ к веб-сайту.
Данная категория используется для изменения параметров приложения. Provider Configuration

Редактировать конфигурационные файлы можно и вручную, выбрав их в обозревателе решений (Solution Explorer)

Пример файла web.config, сформированного при создании нового веб - узла средствами Visual Studio:
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.extensions"
type="System.Web.Configuration.SystemWebExtensionsSectionGroup,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35">
<sectionGroup name="scripting"
type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="scriptResourceHandler"
type="System.Web.Configuration.ScriptingScriptResourceHandlerSection,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" requirePermission="false"
allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices"
type="System.Web.Configuration.ScriptingWebServicesSectionGroup,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35">
<section name="jsonSerialization"
type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
requirePermission="false" allowDefinition="Everywhere"/>
<section name="profileService"
type="System.Web.Configuration.ScriptingProfileServiceSection,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"
requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="authenticationService"
type="System.Web.Configuration.ScriptingAuthenticationServiceSection,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"
requirePermission="false" allowDefinition="MachineToApplication"/>
</sectionGroup>
</sectionGroup>
</sectionGroup>
</configSections>
<system.web>
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI"
assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"/>
</controls>
</pages>
<compilation debug="true">
<assemblies>
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"/>
</assemblies>
</compilation>
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false"
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add verb="*" path="*_AppService.axd" validate="false"
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add verb="GET,HEAD" path="ScriptResource.axd"
type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
validate="false"/>
</httpHandlers>
<httpModules>
<add name="ScriptModule"
type="System.Web.Handlers.ScriptModule, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</httpModules>
</system.web>
<system.web.extensions>
<scripting>
<webServices>
</webServices>
</scripting>
</system.web.extensions>
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<add name="ScriptModule" preCondition="integratedMode"
type="System.Web.Handlers.ScriptModule, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx"
preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd"
preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add name="ScriptResource" preCondition="integratedMode"
verb="GET,HEAD" path="ScriptResource.axd"
type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</handlers>
</system.webServer>
</configuration>
Параметры конфигурирования непосредственно ASP.NET находятся между дескрипторами <system.web>. Вы можете определять любые свои группы параметров конфигурирования (разделы), но обычно, разделов, предлагаемых системой ASP .NET, вполне достаточно.
<compilation>
Раздел <compilation> позволяет задать параметры компиляции приложения. В частности, можно установить язык используемый по умолчанию в приложении и определить параметры отладки приложения.
<compilation defaultLanguage="С#" debug="true" />
По умолчанию свойство debug = "false".
<globalization>
Раздел <globalization> позволяет настроить параметры
<globalization requestEncoding="windows-1251"
responseEncoding="windows-1251" />
<appSettings>
Пожалуй, <appSettings> является наиболее часто используемым разделом, поскольку в нем вы можете определять свои атрибуты, такие как, например, <appSettings> имеет всего один элемент – add, который в свою очередь имеет два атрибута – key и value.
<configuration>
<appSettings>
<--! <add key="Ключ" value="Значение"/> -->
<add key="MyTitle" value="Это мой заголовок окна"/>
<add key="MyDBPath" value="А здесь находится путь к моей базе данных"/>
</appSettings>
</configuration>
В отличии от других разделов, <appSettings> ASP .NET никак не обрабатывает и поэтому нахождение дескрипторов <appSettings> в разделе <system.web> не обязательно.
Чтобы получить указанные в <appSettings> данные, в данном случае MyTitle и/или MyDBPath, достаточно применить на ASP .NET странице свойство ConfigurationSettings.Appsettings:
Private Sub Page_Load (obj As Object, e As EventArgs)
'Отправляем в браузер строку значение ключа MyDBPath
Response.Write(ConfigurationSettings.AppSettings("MyDBPath"))
End Sub
Вот собственно и все. Думаю вы сумеете найти достойное применение <appSettings>.
<customErrors>
Данный раздел позволяет указать страницу, на которую будет попадать пользователь при возникновении ошибки. Например, при возникновении 404 ошибки (Ресурс не найден), вместо стандартного сообщения об ошибке, вы можете вставить свою страницу с сообщением об ошибке. <customErrors> имеет два атрибута:
defaultRedirect – указывает страницу, на которую будет отправлен пользователь при возникновении ошибки.
mode – устанавливает режим вывода ошибок и может иметь три значения: on – включен, off – выключен и remote – показывать только удаленным пользователям.
Обработка ошибок производиться элементом error, который имеет два атрибута: statuscode и . Как вы уже наверное догадались, statuscode – – страница, на которую будет перенаправлен пользователь при возникновении ошибки.
Для примера, ниже указанная конфигурация, при возникновении 404 ошибки (ресурс не найден) перенаправит пользователя на страницу error404.html, а в случае возникновения другой ошибки – на страницу error.html:
<configuration>
<customError defaultRedirect="error.html"
mode="on">
<error statuscode="404"
redirect="error404.html" />
</customError>
</configuration>
При возникновении ошибки, на указанную в файле конфигурации страницу, также передается параметр aspxerrorpath, который содержит виртуальный путь к файлу вызвавшему ошибку и который можно обработать объектом Request.
Например, пользователь обращается к несуществующей странице: http://localhost/news.aspx и, соответственно, возникает ошибка 404 и пользователь перенаправляется по адресу: http://localhost/error404.html?aspxerrorpath=/news.aspx
<pages>
Данный раздел позволяет установить параметры страницы, которые обычно указываются в таких директивах, как - @ Page. Это довольно удобно, когда требуется установить одинаковые параметры для всех страниц сразу. Для более наглядно примера, посмотрите следующую конфигурацию:
<configuration>
<system.web>
<pages buffer="true" />
</system.web>
</configuration>
В данном примере, для всех страниц приложения включается буферизация страниц.
<sessionState>
<sessionState> позволяет установить параметры сессии и имеет следующие атрибуты:
mode – указывает off – inproc – информация о сеансе хранится локально (по умолчанию), stateserver – информация о сеансе хранится на другом сервере и sqlserver – информация о сеансе хранится в базе данных SQL Server.cookieless – значение true данного параметра позволяет отключить использование сессией cookies в приложении, при этом сеанс будет сохраняться в строке адреса url.timeout – максимальное время "жизни" сессии в режиме ожидания (по умолчанию 20 минут)connectionString – строка соединения, содержащая имя сервера и порт для хранения сессии. Используется только при значении mode="stateserver".sqlConnectionString – строка соединения с базой данных SQL Server. Используется только при значении mode="sqlserver".Прочие разделы
Web.config имеет еще много разделов конфигурирования, я не буду подробно останавливаться на каждом из них, поскольку это тема не одной статьи. Ниже представлена таблица со всеми разделами конфигурирования файла web.config и кратким их описанием:
<appSettings>
| позволяет хранить пользовательские (ваши) параметры приложения |
|---|---|
<authorization> |
позволяет настроить аутентификацию пользователей. |
<authorization> |
конфигурирует авторизацию ресурсов. |
<browserCaps> |
представляет возможности браузера пользователя. |
<compilation> |
конфигурирует параметры компиляции приложений. |
<globalization> |
конфигурирует параметры |
<httpHandlers> |
отвечает за передачу поступающих url классам IHttpHandler и IHttpHandlerFactory. Данные раздела <httpHandlerFactory> наследуются всеми подкаталогами. |
<httpModules> |
позволяет настроить HTTP-модули, находящиеся внутри приложения, которые участвуют в обработке каждого запроса, поступившего в приложение. |
<identity> |
управляет доступом к ресурсам ASP .NET. |
<location> |
определяет права доступа к указанному каталогу. |
<processModel> |
конфигурирует параметры модели обработки. |
<sessionState> |
устанавливает параметры сессии. |
<trace> |
позволяет настроить службы трассировки (отладки) системы ASP .NET. |
<webServices> |
конфигурирует параметры web-служб. |
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.