httpRuntime 項目 (ASP.NET 設定結構描述)
更新:2007 年 11 月
設定 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 相容性的 apartment 執行緒。 這個屬性是 .NET Framework 2.0 版中新增的屬性。預設值為 False。 |
||
appRequestQueueLimit |
選擇性 Int32 屬性。 指定 ASP.NET 為應用程式佇列要求的最大數目。當可用的執行緒不足以處理要求時,這些要求就會排入佇列。當佇列超過這個屬性中指定的限制時,會以「503 - 伺服器太忙碌」錯誤而拒絕外來的要求。 預設值為 5000。
|
||
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 (含) 以後版本時才有作用。輸出快取的組態和要求的類型會決定是否可以快取內容。 若要快取回應,則必須符合下列準則:
預設值為 True。 |
||
enableVersionHeader |
選擇性 Boolean 屬性。 指定 ASP.NET 是否應該輸出版本標頭。Microsoft Visual Studio 2005 會使用這個屬性判斷使用中的 ASP.NET 版本。實際執行站台不需要它,可以將其停用。
預設值為 True。 |
||
executionTimeout |
選擇性 TimeSpan 屬性。 指定由 ASP.NET 自動關閉之前允許執行要求的最大秒數。 這個逾時只在 compilation 項目中的偵錯屬性為 False 時才適用。如果 debug 屬性為 True,為了避免在偵錯期間關閉應用程式,請不要將這個逾時設定為大的數值。 預設值為 110 秒。
|
||
maxRequestLength |
選擇性 Int32 屬性。 指定輸入資料流緩衝臨界值的限制,以 KB 為單位。這個限制可以用來防止服務拒絕攻擊,例如由使用者將大型檔案回傳至伺服器所引起的攻擊。 預設值為 4096 KB。如果超出臨界值,則會擲回 ConfigurationErrorsException。 |
||
maxWaitChangeNotification |
選擇性 Int32 屬性。 指定從首次檔案變更通知開始,到重新啟動新要求的 AppDomain 之前,等待的最大秒數。請設定這個屬性的數值,使其大於完成任何檔案複製處理序所需的時間長度。檔案變更通知根據這個屬性的值和 waitChangeNotification 屬性進行組合。 這個屬性是 .NET Framework 2.0 中新增的屬性。 預設值為 0。 |
||
minFreeThreads |
選擇性 Int32 屬性。 指定允許執行新要求的最低可用執行緒個數。ASP.NET 會保持指定數量的執行緒,供需要額外的執行緒來完成處理作業的要求使用。 預設值為 8。 |
||
minLocalRequestFreeThreads |
選擇性 Int32 屬性。 指定使 ASP.NET 持續可用以允許執行新的本機要求的最低可用執行緒個數。指定的執行緒個數保留供來自本機主機的要求使用,免得有些要求在處理期間發出子要求至本機主機。如此有助於避免遞迴重複進入 Web 伺服器的可能死結。 預設值為 4。 |
||
requestLengthDiskThreshold |
選擇性 Int32 屬性。 指定輸入資料流緩衝臨界值的限制,以 KB 為單位。這個值不應超過 maxRequestLength 屬性。 這個屬性是 .NET Framework 2.0 中新增的屬性。 預設值為 80 KB。 |
||
requireRootedSaveAsPath |
選擇性 Boolean 屬性。 指定 SaveAs 方法中的 filename 參數是否必須為絕對路徑。ASP.NET 處理序必須具有在指定位置建立檔案的使用權限。 這個屬性是 .NET Framework 2.0 中新增的屬性。 預設值為 True。 |
||
sendCacheControlHeader |
選擇性 Boolean 屬性。 指定是否傳送快取控制項標頭,預設設為 Private。如果為 True,則會停用用戶端快取。 這個屬性是 .NET Framework 2.0 中新增的屬性。 預設值為 True。 |
||
shutdownTimeout |
選擇性 TimeSpan 屬性。 指定背景工作處理序關閉所允許的分鐘數。當超過逾時時,ASP.NET 會關閉背景工作處理序。 這個屬性是 .NET Framework 2.0 中新增的屬性。 預設值為 90 秒。 |
||
useFullyQualifiedRedirectUrl |
選擇性 Boolean 屬性。 指定用戶端重新導向是否為完整路徑 (使用 "https://server/path" 形式,有些行動控制項必須如此),或相對重新導向是否改為傳送至用戶端。如果為 True,則所有非完整路徑的重新導向會自動轉換為完整路徑形式。
預設值為 False。 |
||
waitChangeNotification |
選擇性 Int32 屬性。 指定在重新啟動 AppDomain 之前,等待其他檔案變更通知的時間 (以秒為單位)。請設定這個屬性的數值,使其大於更新兩個檔案複製變更告知之間的時間。檔案變更通知根據這個屬性的值和 maxWaitChangeNotification 屬性進行組合。 這個屬性是 .NET Framework 2.0 中新增的屬性。 預設值為 0 秒。 |
子項目
無。
父項目
項目 |
描述 |
---|---|
configuration |
Common Language Runtime 和 .NET Framework 應用程式所使用之每一個組態檔中的必要根項目 (Root Element)。 |
system.web |
指定組態檔中 ASP.NET 組態設定的根項目 (Root Element),並包含會設定 ASP.NET Web 應用程式以及控制這些應用程式之行為的組態項目。 |
備註
httpRuntime 項目會設定 ASP.NET HTTP 執行階段設定,其決定如何處理 ASP.NET 應用程式的要求。.NET Framework 提供一些不同的執行階段主應用程式,包括 ASP.NET 執行階段主應用程式。當要求進入時,ASP.NET 會將執行階段設定載入至要處理要求的處理序。ASP.NET 也會對每一個要在 Web 伺服器上執行的 Web 應用程式建立一個應用程式定義域。
預設組態
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"
/>
範例
下列範例將示範如何指定 ASP.NET 應用程式的 HTTP 執行階段參數。
<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 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 |
請參閱
工作
概念
參考
system.web 項目 (ASP.NET 設定結構描述)