網站 < 限制的預設限制>
概觀
元素 <limits>
的 <siteDefaults>
元素會設定預設設定,以限制 Web 服務器的用戶端要求頻寬、連線數目或連線逾時。
注意
如果專案 <limits>
同時在 <siteDefaults>
區段和 <site>
特定月臺的 區段中設定,則區段中的 <site>
組態會用於該月臺。
相容性
版本 | 備註 |
---|---|
IIS 8.5 | 未 <limits> 在 IIS 8.5 中修改專案。 |
IIS 8.0 | 在 IIS 8.0 中未修改專案 <limits> 。 |
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) 管理員開啟 Internet Information Services:
如果您使用 Windows Server 2012 或 Windows Server 2012 R2:
- 在工作列上,依序按一下 [伺服器管理員]、[工具],然後按一下 [Internet Information Services] ([IIS) 管理員]。
如果您使用 Windows 8 或 Windows 8.1:
- 按住Windows鍵,按字母X,然後按一下[主控台]。
- 按一下 [ 系統管理工具],然後按兩下 [Internet Information Services] ([IIS) 管理員]。
如果您使用 Windows Server 2008 或 Windows Server 2008 R2:
- 在工作列上,按一下 [ 開始],指向 [ 系統管理工具],然後按一下 [ Internet Information Services (IIS) 管理員]。
如果您使用 Windows Vista 或 Windows 7:
- 在工作列上,按一下 [開始],然後按一下[主控台]。
- 按兩下 [ 系統管理工具],然後按兩下 [Internet Information Services] ([IIS) 管理員]。
在 [ 連線] 窗格中,然後按一下 [ 月臺] 節點。
在 [網站]窗格中,按一下 [動作] 窗格中的 [設定網站預設值...]。
在 [ 網站預設值] 對話方塊中,展開 [ 限制],指定限制選項,然後按一下 [ 確定]。
組態
屬性
屬性 | 描述 |
---|---|
connectionTimeout |
選擇性 timeSpan 屬性。 指定 IIS 在中斷視為非使用中連線之前所等候的時間 (以秒為單位) 。 連線可能會被視為非使用中,原因如下:
00:02:00 兩分鐘) 。 |
maxBandwidth |
選擇性 uint 屬性。 指定月臺所使用的網路頻寬上限,以每秒位元組為單位。 使用此設定有助於防止使用 IIS 活動多載網路。 預設值是 4294967295 。 |
maxConnections |
選擇性 uint 屬性。 指定月臺的連線數目上限。 使用此設定來限制同時用戶端連線的數目。 預設值是 4294967295 。 |
maxUrlSegments |
選擇性 uint 屬性。 指定 URL 中允許的區段數目上限。 預設值是 32 。 |
子元素
無。
組態範例
下列組態範例會指定 IIS 7 和更新版本的預設 limits
選項。
<system.applicationHost>
<sites>
<siteDefaults>
<limits connectionTimeout="00:02:00" />
</siteDefaults>
</sites>
</system.applicationHost>
範例程式碼
下列程式碼範例會使用 3 分鐘來設定 IIS 7 和更新版本 connectionTimeout
的預設 limits
選項。
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()