Элемент httpRuntime (схема параметров ASP.NET)
Устанавливает настройки времени выполнения ASP.NET HTTP, определяющие порядок обработки запросов в приложении ASP.NET.
<httpRuntime
apartmentThreading = "[True|False]"
appRequestQueueLimit = "number"
delayNotificationTimeout = "number"
enable = "[True|False]"
enableHeaderChecking = "[True|False]"
enableKernelOutputCache = "[True|False]"
enableVersionHeader = "[True|False]"
encoderType = "name"
executionTimeout = "number"
maxRequestLength = "number"
maxWaitChangeNotification = "number"
minFreeThreads = "number"
minLocalRequestFreeThreads = "number"
requestLengthDiskThreshold = "number"
requestValidationMode = "[2.0|4.0]"
requestValidationType = "name"
requireRootedSaveAsPath = "[True|False]"
sendCacheControlHeader = "[True|False]"
shutdownTimeout = "number"
useFullyQualifiedRedirectUrl = "[True|False]"
waitChangeNotification = "number"
/>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Атрибуты
Атрибут |
Описание |
---|---|
apartmentThreading |
Необязательный атрибут элемента Boolean. Включает потоковое подразделение для обеспечения классической совместимости ASP. По умолчанию используется значение False. |
appRequestQueueLimit |
Необязательный атрибут элемента Int32. Задает максимальное число запросов, которое помещается в очередь приложения при использовании ASP.NET. Если для обработки запроса недостаточно свободных потоков, то запрос помещается в очередь. Если количество элементов в очереди превышает количество, указанное в данном атрибуте, то входящие запросы будут отклонены с ошибкой "503 - Server Too Busy" (503 — Сервер перегружен). Значение по умолчанию равно 5000. В .NET Framework версий 1.0 и 1.1 используется значение по умолчанию 100. |
delayNotificationTimeout |
Необязательный атрибут элемента Int32. Задает время ожидания в секундах для задержки уведомлений. Значение по умолчанию равно 5. |
enable |
Необязательный атрибут элемента Boolean. Указывает, разрешен ли для домена приложений (AppDomain) прием входящих запросов на уровне текущего и дочернего узлов. Имеет значение False, если приложение отключено. Значение по умолчанию — True. |
enableHeaderChecking |
Необязательный атрибут элемента Boolean. Указывает, следует ли выполнять в ASP.NET проверку заголовка запроса на наличие потенциальных атак путем внедрения. В случае обнаружения атаки ASP.NET возвращает ошибку. Значение по умолчанию — True. |
enableKernelOutputCache |
Необязательный атрибут элемента Boolean. Указывает, включено ли кэширование выходного потока. Этот атрибут учитывается только в том случае, если установлены службы Microsoft Internet Information Services (IIS) 6.0 или более поздней версии. Настройки кэширования выходного потока и тип запроса определяют, когда следует выполнять кэширование содержимого. Кэширование ответного сообщения выполняется, если соблюдаются следующие условия:
Значение по умолчанию — True. |
enableVersionHeader |
Необязательный атрибут элемента Boolean. Указывает, следует ли в ASP.NET выводить версию заголовка. Этот атрибут используется в Microsoft Visual Studio 2005 для определения используемой версии ASP.NET. Этот атрибут является необязательным для рабочих веб-узлов и может быть отключен.
Примечание
Этот атрибут недоступен в .NET Framework 1.0.
Значение по умолчанию — True. |
encoderType |
Получает или задает имя пользовательского типа, который можно использоваться для обработки кодировки HTML и URL. ASP.NET использует тип HttpEncoder как обработчик по умолчанию для задач HTML и URL-кодирования. Чтобы настроить поведение шифрования, можно использовать класс, который наследует от типа HttpEncoder. В файле конфигурации для приложения затем следует задать атрибуту EncoderType элемента httpRuntime полное строковое имя пользовательского типа. Этот атрибут не использовался до .NET Framework версии 4. |
executionTimeout |
Необязательный атрибут элемента Int32. Задает наибольшее число секунд, отведенных для выполнения запроса перед автоматическим прекращением его обработки с помощью ASP.NET. Заданное время ожидания используется только в том случае, если для атрибута отладки в элементе compilation установлено значение False. Если атрибут debug имеет значение True, то чтобы избежать закрытия приложения во время отладки, не следует задавать большое значение времени задержки. Значение по умолчанию равно 110. В .NET Framework версии 1.0 и 1.1 используется значение по умолчанию 90 секунд. |
maxRequestLength |
Необязательный атрибут элемента Int32. Задает пороговое значение для буферизации входного потока в КБ. Данное значение используется для предотвращения атак типа "отказ в обслуживании", происходящих при отправке пользователями на сервер больших файлов. Значение по умолчанию равно 4096. При превышении порогового значения возникает исключение ConfigurationErrorsException. |
maxWaitChangeNotification |
Необязательный атрибут элемента Int32. Задает максимальное значение времени ожидания (в секундах) с момента получения первого уведомления об изменении файла до перезапуска AppDomain для нового запроса. Для этого атрибута следует устанавливать значение, превышающее допустимое время на выполнение любого процесса копирования файла. Уведомления об изменении файлов объединяются на основании значений этого атрибута и атрибута waitChangeNotification. Значение по умолчанию равно 0. |
minFreeThreads |
Необязательный атрибут элемента Int32. Задает минимальное число свободных потоков, необходимое для выполнения новых запросов. При использовании ASP.NET заданное число потоков освобождается для запросов, которым для завершения обработки требуются дополнительные потоки. Значение по умолчанию равно 8. |
minLocalRequestFreeThreads |
Необязательный атрибут элемента Int32. Задает минимальное число свободных потоков, которые при использовании ASP.NET остаются доступными для выполнения новых локальных запросов. Заданное число потоков резервируется для запросов, исходящих от локального хоста, в том случае, когда некоторые запросы в процессе своей обработки создают дочерние запросы к локальному хосту. Это предотвращает зависание, связанное с рекурсивным повторным вводом данных на веб-сервер. Значение по умолчанию равно 4. |
requestLengthDiskThreshold |
Необязательный атрибут элемента Int32. Задает пороговое значение для буферизации входного потока в килобайтах. Это значение не должно превышать значение атрибута maxRequestLength. Значение по умолчанию равно 80. |
requestValidationMode |
Необязательный атрибут элемента Int32. Получает или задает номер версии, указывающий, какой подход к проверке в зависимости от версии ASP.NET будет использован. Значение, присвоенное этому свойству не проверяется в соответствии с конкретной версией ASP.NET. Любое числовое значение меньше 4.0 (например, 3.7, 2.9 или 2.0) интерпретируется как 2.0. Любое число больше 4.0 интерпретируется как 4.0. По умолчанию используется значение 4.0. |
requestValidationType |
Необязательный атрибут элемента String. Получает или задает имя типа, используемого для проверки HTTP-запросов. Чтобы настроить поведение проверки запроса ASP.NET, можно создать класс, который наследует от типа RequestValidator. В файле конфигурации для приложения затем следует задать атрибуту requestValidationType элемента httpRuntime полное строковое имя пользовательского типа. По умолчанию используется полное имя типа RequestValidator, используемого ASP.NET для проверки |
requireRootedSaveAsPath |
Необязательный атрибут элемента Boolean. Указывает, должен ли параметр filename метода SaveAs содержать абсолютный путь. Процесс ASP.NET должен иметь права на создание файлов в указанному расположении. Значение по умолчанию — True. |
sendCacheControlHeader |
Необязательный атрибут элемента Boolean. Указывает, следует ли отправлять заголовок cache control, для которого по умолчанию устанавливается значение Private. При значении True кэширование на стороне клиента отключено. Значение по умолчанию — True. |
shutdownTimeout |
Необязательный атрибут элемента Int32. Задает разрешенное количество секунд, в течение которого должен завершиться рабочий процесс. По истечении времени ожидания при использовании ASP.NET рабочий процесс будет завершен. По умолчанию используется значение 90 секунд. |
useFullyQualifiedRedirectUrl |
Необязательный атрибут элемента Boolean. Указывает, будут ли перенаправления на стороне клиента полными (в форме ссылки "https://server/path", что является необходимым для мобильных элементов управления), или же клиенту будут отправляться относительные перенаправления. При значении True все перенаправления, имеющие неполную форму, автоматически преобразуются к полной форме.
Примечание
Если для этого атрибута установлено значение False, в некоторых обозревателях могут возникать ошибки при загрузке страниц с отключенными файлами cookie.
По умолчанию используется значение False. |
waitChangeNotification |
Необязательный атрибут элемента Int32. Задает время ожидания (в секундах) до получения следующего уведомления об изменении файла перед перезапуском AppDomain. Для этого атрибута следует устанавливать значение, превышающее время между обновлениями двух уведомлений об изменении копии файла. Уведомления об изменении файлов объединяются на основании значений этого атрибута и атрибута maxWaitChangeNotification . Значение по умолчанию равно 0. |
Дочерние элементы
Отсутствует.
Родительские элементы
Элемент |
Описание |
---|---|
configuration |
Обязательный корневой элемент любого файла конфигурации, используемого средой CLR и приложениями .NET Framework. |
system.web |
Задает корневой элемент для параметров конфигурации ASP.NET в файле конфигурации и содержит элементы конфигурации для настройки веб-приложений ASP.NET и управления работой этих приложений. |
Заметки
Элемент httpRuntime устанавливает настройки времени выполнения ASP.NET HTTP, определяющие порядок обработки запросов в приложении ASP.NET. В .NET Framework представлено несколько разных хост-приложений среды выполнения, включая хост-приложение ASP.NET. При поступлении запроса ASP.NET загружает настройки среды выполнения в процесс, который обрабатывает запрос. ASP.NET также создает домен приложения для каждого веб-приложения, которое будет запущено на веб-сервере.
Параметры по умолчанию
Следующий элемент по умолчаниюhttpRuntime не определен явно в файле Machine.config или корневом файле Web.config. Однако следующие настройки являются значениями по умолчанию, инициализируемыми системой. Чтобы настроить этот раздел, необходимо создать его в файле конфигурации и определить только настраиваемые атрибуты.
<httpRuntime
executionTimeout="110"
maxRequestLength="4096"
requestLengthDiskThreshold="80"
useFullyQualifiedRedirectUrl="false"
minFreeThreads="8"
minLocalRequestFreeThreads="4"
appRequestQueueLimit="5000"
enableKernelOutputCache="true"
enableVersionHeader="true"
requireRootedSaveAsPath="true"
enable="true"
shutdownTimeout="90"
delayNotificationTimeout="5"
waitChangeNotification="0"
maxWaitChangeNotification="0"
requestPriority="Normal"
enableHeaderChecking="true"
sendCacheControlHeader="true"
apartmentThreading="false"
/>
Пример
В следующем примере задаются параметры среды выполнения HTTP для приложения ASP.NET.
<configuration>
<system.web>
<httpRuntime maxRequestLength="4000"
enable = "True"
requestLengthDiskThreshold="512
useFullyQualifiedRedirectUrl="True"
executionTimeout="45"
versionHeader="1.1.4128"/>
</system.web>
</configuration>
Сведения об элементе
Обработчик раздела конфигурации |
|
Элемент конфигурации |
|
Настраиваемые расположения |
Machine.config Файл Web.config корневого уровня Файл Web.config уровня приложения Файл Web.config уровня виртуального или физического каталога |
Требования |
Microsoft IIS 5.0, 5.1 или 6.0 .NET Framework 1.0, 1.1 версии 2.0 Microsoft Visual Studio 2003 или Visual Studio 2005 |
См. также
Ссылки
Элемент system.web (схема параметров ASP.NET)
Элемент configuration (схема общих параметров)
Основные понятия
Иерархия и наследование файла конфигурации ASP.NET
Настройка обеспечения безопасности ASP.NET
Другие ресурсы
Общие параметры конфигурации (ASP.NET)