Ограничения по умолчанию для ограничений веб-сайтов <>
Общие сведения
Элемент <limits>
<siteDefaults>
элемента настраивает параметры по умолчанию, ограничивающие пропускную способность, количество подключений или время ожидания подключения для клиентских запросов к веб-серверу.
Примечание
<limits>
Если элемент настроен как в разделе, так <siteDefaults>
и в <site>
разделе для определенного сайта, конфигурация в <site>
разделе используется для этого сайта.
Совместимость
Версия | Примечания |
---|---|
IIS 8,5 | Элемент <limits> не был изменен в IIS 8.5. |
IIS 8,0 | Элемент <limits> не был изменен в IIS 8.0. |
IIS 7,5 | Элемент <limits> не был изменен в IIS 7.5. |
IIS 7.0 | Элемент <limits> элемента появился <siteDefaults> в IIS 7.0. |
IIS 6,0 | Элемент <limits> заменяет следующие параметры метабазы IIS 6.0:
|
Настройка
Элемент <limits>
<siteDefaults>
элемента включен в установку iis 7 и более поздних версий по умолчанию.
Инструкции
Настройка параметров ограничения подключений по умолчанию для сервера
Откройте диспетчер служб IIS.
Если вы используете Windows Server 2012 или Windows Server 2012 R2:
- На панели задач щелкните диспетчер сервера, инструменты, а затем диспетчер служб IIS.
Если вы используете Windows 8 или Windows 8.1:
- Удерживая нажатой клавишу Windows, нажмите букву X и щелкните панель управления.
- Щелкните Администрирование, а затем дважды щелкните диспетчер служб IIS.
Если вы используете Windows Server 2008 или Windows Server 2008 R2:
- На панели задач нажмите кнопку Пуск, наведите указатель на пункт Администрирование, а затем щелкните Диспетчер служб IIS.
Если вы используете Windows Vista или Windows 7:
- На панели задач нажмите кнопку Пуск, а затем выберите пункт панель управления.
- Дважды щелкните элемент Администрирование, а затем дважды щелкните диспетчер служб IIS.
В области Подключения щелкните узел Сайты .
В области Сайты щелкните Задать значения по умолчанию веб-сайта... в области Действия .
В диалоговом окне Веб-сайт по умолчанию разверните узел Ограничения, укажите параметры ограничения и нажмите кнопку ОК.
Конфигурация
Атрибуты
Атрибут | Описание |
---|---|
connectionTimeout |
Необязательный атрибут timeSpan. Указывает время (в секундах) ожидания служб IIS перед отключением подключения, которое считается неактивным. Подключения можно считать неактивными по следующим причинам:
00:02:00 (две минуты). |
maxBandwidth |
Необязательный атрибут uint. Указывает максимальную пропускную способность сети (в байтах в секунду), используемую для сайта. Используйте этот параметр, чтобы предотвратить перегрузку сети с помощью действий IIS. Значение по умолчанию — 4294967295 . |
maxConnections |
Необязательный атрибут uint. Указывает максимальное количество подключений для сайта. Используйте этот параметр, чтобы ограничить количество одновременных клиентских подключений. Значение по умолчанию — 4294967295 . |
maxUrlSegments |
Необязательный атрибут uint. Указывает максимальное количество сегментов, разрешенных в URL-адресе. Значение по умолчанию — 32 . |
Дочерние элементы
Отсутствует.
Образец конфигурации
В следующем примере конфигурации указаны параметры по умолчанию limits
для IIS 7 и более поздних версий.
<system.applicationHost>
<sites>
<siteDefaults>
<limits connectionTimeout="00:02:00" />
</siteDefaults>
</sites>
</system.applicationHost>
Пример кода
В следующих примерах кода параметры по умолчанию limits
для IIS 7 и более поздних версий connectionTimeout
настраивают за 3 минуты.
AppCmd.exe
appcmd.exe set config -section:system.applicationHost/sites /siteDefaults.limits.connectionTimeout:"00:03:00" /commit:apphost
Примечание
При использовании AppCmd.exe для настройки этих параметров для параметра apphost
фиксации необходимо задать значение . Это зафиксирует параметры конфигурации в соответствующем разделе расположения в файле ApplicationHost.config.
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using (ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection sitesSection = config.GetSection("system.applicationHost/sites");
ConfigurationElement siteDefaultsElement = sitesSection.GetChildElement("siteDefaults");
ConfigurationElement limitsElement = siteDefaultsElement.GetChildElement("limits");
limitsElement["connectionTimeout"] = TimeSpan.Parse("00:03:00");
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim sitesSection As ConfigurationSection = config.GetSection("system.applicationHost/sites")
Dim siteDefaultsElement As ConfigurationElement = sitesSection.GetChildElement("siteDefaults")
Dim limitsElement As ConfigurationElement = siteDefaultsElement.GetChildElement("limits")
limitsElement("connectionTimeout") = TimeSpan.Parse("00:03:00")
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST");
var siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults");
var limitsElement = siteDefaultsElement.ChildElements.Item("limits");
limitsElement.Properties.Item("connectionTimeout").Value = "00:03:00";
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults")
Set limitsElement = siteDefaultsElement.ChildElements.Item("limits")
limitsElement.Properties.Item("connectionTimeout").Value = "00:03:00"
adminManager.CommitChanges()