Конфигурирование и настройка Microsoft ASP.NET

       

Работа с разделом <httpRuntime>


Раздел <httpRuntime> включает параметры, относящихся к среде выполнения HTTP ASP.NET. Параметры раздела включают установки максимального количества разрешенных запросов, размера запросов и времени хранения запросов. Ниже приведен синтаксис раздела <httpRuntime>.

<httpRuntime appRequestQueueLimit="number of requests" executionTimeout="seconds" maxRequestLength="Kbytes" minFreeLocalRequestFreeThreads="number of threads" minFreeThreads="number of threads" useFullyQualifiedRedirectUrl= "true | false" versionHeader="version string" />

Таблица 4.13 содержит перечень свойств раздела <httpRuntime>.

Таблица 4.13. Свойства <httpRuntime>

СвойствоОписание
appRequestQueueLimitОпределяет максимальное количество запросов в очереди. Если для обработки запроса нет свободных потоков выполнения, он ставится в очередь. При заполнении очереди среда выполнения возвращает ошибку 503 Server Too Busy (Сервер занят). Параметр определяет, сколько запросов может быть помещено в очередь, пока не будет возвращена эта ошибка.
executionTimeoutОпределяет максимальное количество секунд, в течение которых запрос может обрабатываться, прежде чем будет принудительно завершен средой ASP.NET.
maxRequestLengthОпределяет максимальный размер запроса, поддерживаемый средой выполнения. Параметр связан с максимальным размером загружаемого файла, так как загружаемый файл включается в запрос HTTP. Он помогает защитить ваше приложение от атак типа denial of service (отказ в обслуживании), так как одним из методов этих атак является отправка на сервер слишком больших файлов. Значением по умолчанию является 4096 Kб или 4 Mб.
minFreeLocalRequestFreeThreadsОпределяет минимальное количество потоков выполнения, которое ASP.NET держит готовыми для выполнения новых локальных запросов. Эти потоки зарезервированы для запросов, поступающих от локальной системы. Иногда запросы генерируют дочерние запросы к локальной системе, и если поток выполнения для дочернего запроса недоступен, возникнет взаимная блокировка. Специальные потоки, зарезервированные для запросов локальной системы, помогают предотвратить возможность возникновения взаимных блокировок.
minFreeThreadsОпределяет минимальное количество свободных потоков выполнения, предназначенных для обработки новых запросов.
useFullyQualifiedRedirectUrlОпределяет, используют ли перенаправления клиентов полные (абсолютные) адреса URL или относительные. Полный URL – это адрес, включающий в URL информацию о сайте (например, http://server/path). Относительный URL включает только путь относительно уже заданного пути сервера, (например /path/app2/admin.aspx).
versionHeaderОпределяет заголовочное значение версии, направляемое ASP.NET с каждым ответом HTTP. Оно используется в Microsoft Visual Studio .NET для определения версии ASP.NET. Это значение необязательно для эксплуатируемых сайтов и может быть отключено при помощи установки данного параметра в пустое значение или удаления этого атрибута.

Ниже показан пример раздела <httpRuntime>.

<httpRuntime appRequestQueueLimit="100" executionTimeout="90" maxRequestLength="4096" minFreeLocalRequestFreeThreads="8" minFreeThreads="8" useFullyQualifiedRedirectUrl="false" versionHeader="1.1.4128" />

Одним из наиболее часто модифицируемых параметров <httpRuntime> является свойство maxRequestLength. Его обычно изменяют так, чтобы разрешить загрузку более крупных файлов. Однако помните, что каждый раз, когда вы увеличиваете это число, вы увеличиваете восприимчивость вашего сервера к атакам на отказ в обслуживании.



Содержание раздела