Элемент httpRuntime (схема параметров ASP.NET)

Обновлен: Ноябрь 2007

Устанавливает настройки времени выполнения ASP.NET HTTP, определяющие порядок обработки запросов в приложении ASP.NET.

Элемент configuration (схема общих параметров)
  Элемент system.web (схема параметров ASP.NET)
    Элемент httpRuntime (схема параметров ASP.NET)

<httpRuntime
      executionTimeout = "number" 
   maxRequestLength = "number" 
   requestLengthDiskThreshold = "number" 
   useFullyQualifiedRedirectUrl = "[True|False]" 
   minFreeThreads = "number" 
   minLocalRequestFreeThreads = "number" 
   appRequestQueueLimit = "number"
   enableKernelOutputCache = "[True|False]" 
   enableVersionHeader = "[True|False]" 
   apartmentThreading = "[True|False]"
   requireRootedSaveAsPath = "[True|False]"
   enable = "[True|False]" 
   sendCacheControlHeader = "[True|False]" 
      shutdownTimeout = "number"
   delayNotificationTimeout = "number"
   waitChangeNotification = "number" 
   maxWaitChangeNotification = "number" 
   enableHeaderChecking = "[True|False]" 
/>

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут

Описание

apartmentThreading

Необязательный атрибут типа Boolean.

Включает потоковое подразделение для обеспечения классической совместимости ASP.

Этот атрибут не использовался до .NET Framework версии 2.0. Значение по умолчанию — False.

appRequestQueueLimit

Необязательный атрибут типа Int32.

Задает максимальное число запросов, которое помещается в очередь приложения при использовании ASP.NET. Если для обработки запроса недостаточно свободных потоков, то запрос помещается в очередь. Если количество элементов в очереди превышает количество, указанное в данном атрибуте, то входящие запросы будут отклонены с ошибкой "503 - Server Too Busy" (503 — Сервер перегружен).

По умолчанию используется значение 5000.

e1f13641.alert_note(ru-ru,VS.90).gifПримечание.
В .NET Framework версий 1.0 и 1.1 используется значение по умолчанию 100.

delayNotificationTimeout

Необязательный атрибут TimeSpan.

Задает время ожидания в секундах для задержки уведомлений.

Этот атрибут не использовался до .NET Framework версии 2.0.

Значение по умолчанию — 5 секунд.

Enable

Необязательный атрибут Boolean.

Указывает, разрешен ли для домена приложений (AppDomain) прием входящих запросов на уровне текущего и дочернего узлов. Имеет значение False, если приложение отключено.

Значение по умолчанию — True.

enableHeaderChecking

Необязательный атрибут типа Boolean.

Указывает, следует ли выполнять в ASP.NET проверку заголовка запроса на наличие потенциальных атак путем внедрения. В случае обнаружения атаки ASP.NET возвращает ошибку.

Этот атрибут не использовался до .NET Framework 2.0.

Значение по умолчанию — True.

enableKernelOutputCache

Необязательный атрибут типа Boolean.

Указывает, включено ли кэширование выходного потока. Этот атрибут учитывается только в том случае, если установлены службы Microsoft Internet Information Services (IIS) 6.0 или более поздней версии. Настройки кэширования выходного потока и тип запроса определяют, когда следует выполнять кэширование содержимого.

Кэширование ответного сообщения выполняется, если соблюдаются следующие условия:

  • Кэширование должно быть явно включено с помощью директивы страницы или с помощью API-интерфейса кэширования.

  • Следует определить политику сроков действия для кэширования, которая определяет, в какой момент ответ отклоняется ядром.

  • При кэшировании не используются переменные заголовки или параметры.

  • Не требуется проверка подлинности.

Значение по умолчанию — True.

enableVersionHeader

Необязательный атрибут типа Boolean.

Указывает, следует ли в ASP.NET выводить версию заголовка. Этот атрибут используется в Microsoft Visual Studio 2005 для определения используемой версии ASP.NET. Этот атрибут является необязательным для рабочих веб-узлов и может быть отключен.

e1f13641.alert_note(ru-ru,VS.90).gifПримечание.
Этот атрибут недоступен в .NET Framework 1.0.

Значение по умолчанию — True.

executionTimeout

Необязательный атрибут типа TimeSpan.

Задает наибольшее число секунд, отведенных для выполнения запроса перед автоматическим прекращением его обработки с помощью ASP.NET.

Заданное время ожидания используется только в том случае, если для атрибута отладки в элементе compilation установлено значение False. Если атрибут debug имеет значение True, то чтобы избежать закрытия приложения во время отладки, не следует задавать большое значение времени задержки.

Значение по умолчанию — 110 секунд.

e1f13641.alert_note(ru-ru,VS.90).gifПримечание.
В .NET Framework версии 1.0 и 1.1 используется значение по умолчанию 90 секунд.

maxRequestLength

Необязательный атрибут Int32.

Задает пороговое значение для буферизации входного потока в КБ. Данное значение используется для предотвращения атак типа "отказ в обслуживании", происходящих при отправке пользователями на сервер больших файлов.

По умолчанию используется значение 4096 КБ. При превышении порогового значения возникает ConfigurationErrorsException.

maxWaitChangeNotification

Необязательный атрибут Int32.

Задает максимальное значение времени ожидания (в секундах) с момента получения первого уведомления об изменении файла до перезапуска AppDomain для нового запроса. Для этого атрибута следует устанавливать значение, превышающее допустимое время на выполнение любого процесса копирования файла. Уведомления об изменении файлов объединяются на основании значений этого атрибута и атрибута waitChangeNotification.

Этот атрибут не использовался до .NET Framework 2.0.

Значение по умолчанию — 0.

minFreeThreads

Необязательный атрибут типа Int32.

Задает минимальное число свободных потоков, необходимое для выполнения новых запросов. При использовании ASP.NET заданное число потоков освобождается для запросов, которым для завершения обработки требуются дополнительные потоки.

Значение по умолчанию — 8.

minLocalRequestFreeThreads

Необязательный атрибут типа Int32.

Задает минимальное число свободных потоков, которые при использовании ASP.NET остаются доступными для выполнения новых локальных запросов. Заданное число потоков резервируется для запросов, исходящих от локального хоста, в том случае, когда некоторые запросы в процессе своей обработки создают дочерние запросы к локальному хосту. Это предотвращает зависание, связанное с рекурсивным повторным вводом данных на веб-сервер.

Значение по умолчанию — 4.

requestLengthDiskThreshold

Необязательный атрибут типа Int32.

Задает пороговое значение для буферизации входного потока в килобайтах. Это значение не должно превышать значение атрибута maxRequestLength.

Этот атрибут не использовался до .NET Framework 2.0.

По умолчанию используется значение 80 КБ.

requireRootedSaveAsPath

Необязательный атрибут Boolean.

Указывает, должен ли параметр filename метода SaveAs содержать абсолютный путь. Процесс ASP.NET должен иметь права на создание файлов в указанному расположении.

Этот атрибут не использовался до .NET Framework 2.0.

Значение по умолчанию — True.

sendCacheControlHeader

Необязательный атрибут типа Boolean.

Указывает, следует ли отправлять заголовок cache control, для которого по умолчанию устанавливается значение Private. При значении True кэширование на стороне клиента отключено.

Этот атрибут не использовался до .NET Framework 2.0.

Значение по умолчанию — True.

shutdownTimeout

Необязательный атрибут типа TimeSpan.

Задает разрешенное количество минут, в течение которого должен завершиться рабочий процесс. По истечении времени ожидания при использовании ASP.NET рабочий процесс будет завершен.

Этот атрибут не использовался до .NET Framework 2.0.

Значение по умолчанию — 90 секунд.

useFullyQualifiedRedirectUrl

Необязательный атрибут Boolean.

Указывает, будут ли перенаправления на стороне клиента полными (в форме ссылки "https://server/path", что является необходимым для элементов управления для мобильных устройств), или же клиенту будут отправляться относительные перенаправления. При значении True все перенаправления, имеющие неполную форму, автоматически преобразуются к полной форме.

e1f13641.alert_note(ru-ru,VS.90).gifПримечание.
Если для этого атрибута установлено значение False, в некоторых обозревателях могут возникать ошибки при загрузке страниц с отключенными файлами cookie.

Значение по умолчанию — False.

waitChangeNotification

Необязательный атрибут типа Int32.

Задает время ожидания (в секундах) до получения следующего уведомления об изменении файла перед перезапуском AppDomain. Для этого атрибута следует устанавливать значение, превышающее время между обновлениями двух уведомлений об изменении копии файла. Уведомления об изменении файлов объединяются на основании значений этого атрибута и атрибута maxWaitChangeNotification .

Этот атрибут не использовался до .NET Framework 2.0.

Значение по умолчанию — 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>

Сведения об элементе

Обработчик раздела конфигурации

HttpRuntimeSection

Элемент конфигурации

HttpRuntime

Настраиваемые расположения

Machine.config

Файл Web.config корневого уровня

Файл Web.config уровня приложения

Файл Web.config уровня виртуального или физического каталога

Требования

Microsoft Internet Information Services (IIS) 5.0, 5.1 или 6.0

.NET Framework 1.0, 1.1 версии 2.0

Microsoft Visual Studio 2003 или Visual Studio 2005

См. также

Задачи

Практическое руководство. Настройка отдельных каталогов с помощью параметров расположения

Пошаговое руководство. Отключение параметров конфигурации ASP.NET

Основные понятия

Кэширование страниц ASP.NET

Иерархия и наследование файла конфигурации ASP.NET

Настройка обеспечения безопасности ASP.NET

Сценарии конфигурации ASP.NET

Ссылки

Элемент system.web (схема параметров ASP.NET)

Элемент configuration (схема общих параметров)

System.Configuration

System.Web.Configuration

HttpRuntimeSection

HttpRuntime

Другие ресурсы

Общие параметры конфигурации (ASP.NET)

Параметры конфигурации ASP.NET

Администрирование веб-узлов ASP.NET

Конфигурационный интерфейс API ASP.NET