ASP < asp>
概觀
元素 <asp>
會指定 ASP 應用程式的組態設定。 其中包括以開發人員為主的組態設定,例如控制偵錯和錯誤傳回設定的屬性。 元素 <asp>
也包含屬性,可控制應用程式所使用的字元集、應用程式的指令碼語言,以及應用程式是否啟用錯誤記錄。
元素 <asp>
也可以包含設定月臺或應用程式的 COM+、ASP 快取、緩衝限制和會話狀態的專案。
相容性
版本 | 備註 |
---|---|
IIS 10.0 | 在 <asp> IIS 10.0 中未修改專案。 |
IIS 8.5 | 未 <asp> 在 IIS 8.5 中修改專案。 |
IIS 8.0 | 在 IIS 8.0 中未修改專案 <asp> 。 |
IIS 7.5 | 未 <asp> 在 IIS 7.5 中修改專案。 |
IIS 7.0 | 專案 <asp> 是在 IIS 7.0 中引進的。 |
IIS 6.0 | 專案 <asp> 及其子系會取代 IIS 6.0 IIsWebService 物件中的 ASP 相關屬性。 |
安裝程式
若要在 Web 服務器上支援及設定 ASP 應用程式,您必須安裝 ASP 模組。 若要安裝 ASP 模組,請使用下列步驟。
Windows Server 2012 或 Windows Server 2012 R2
- 在工作列上,按一下 [伺服器管理員]。
- 在伺服器管理員中,按一下 [管理]功能表,然後按一下 [新增角色和功能]。
- 在 [ 新增角色和功能 精靈] 中,按 [下一步]。 選取安裝類型,然後按 [ 下一步]。 選取目的地伺服器,然後按 [ 下一步]。
- 在 [ 伺服器角色] 頁面上,依序展開 [Web 服務器] ([IIS) ]、[ Web 服務器]、[ 應用程式開發],然後選取 [ ASP]。
- 如果 [ 新增 ASP 所需的功能? ] 對話方塊隨即出現,請按一下 [ 新增功能]。 (只有在伺服器上尚未安裝 ISAPI 延伸模組角色服務時,才會顯示此頁面。)
- 在 [伺服器角色] 頁面上,按 [下一步]。
- 在 [選取功能] 頁面上,按 [下一步]。
- 在 [確認安裝選項] 頁面上,按一下 [安裝]。
- 在 [結果] 頁面上,按一下 [關閉]。
Windows 8 或Windows 8.1
在 [開始] 畫面上,將指標全部移至左下角,以滑鼠右鍵按一下 [開始] 按鈕,然後按一下[主控台]。
在主控台中,按一下 [程式和功能],然後按一下 [開啟或關閉 Windows 功能]。
依 序展開 [Internet Information Services]、[ 萬維網服務]、[ 應用程式開發功能],然後選取 [ ASP]。
注意
如果尚未安裝 ISAPI 延伸模組角色,將會選取該角色。
按一下 [確定]。
按一下 [關閉] 。
Windows Server 2008 或 Windows Server 2008 R2
- 在工作列上,按一下 [開始],指向 [系統管理工具],然後按一下[伺服器管理員]。
- 在[伺服器管理員階層] 窗格中,展開 [角色],然後按一下 [Web 服務器] (IIS) 。
- 在 [Web 服務器 (IIS) ] 窗格中,捲動至 [ 角色服務 ] 區段,然後按一下 [ 新增角色服務]。
- 在 [新增角色服務精靈] 的 [選取角色服務] 頁面上,選取[ASP]。
- 如果 [ 新增 ASP 所需的角色服務] 對話方塊出現,請按一下 [新增必要的角色服務]。 (只有在伺服器上尚未安裝 ISAPI 延伸模組角色服務時,才會顯示此頁面。)
- 在 [選取角色服務] 頁面上,按 [下一步]。
- 在 [確認安裝選項] 頁面上,按一下 [安裝]。
- 在 [結果] 頁面上,按一下 [關閉]。
Windows Vista 或 Windows 7
- 在工作列上,按一下 [開始],然後按一下[主控台]。
- 在主控台中,按一下 [程式和功能],然後按一下 [開啟或關閉 Windows 功能]。
- 依 序展開 [Internet Information Services]、[ 萬維網服務]、[ 應用程式開發功能]。
- 選取 [ASP],然後按一下 [ 確定]。
作法
如何設定網站或應用程式的 ASP 設定
(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) 管理員]。
在 [ 連線 ] 窗格中,展開伺服器名稱、[ 網站],然後流覽至您想要設定的網站或 Web 應用程式。
在網站或應用程式 [ 首頁] 窗格中,按兩下 [ASP]。
在[ASP] 窗格中,設定必要的設定,然後按一下 [動作] 窗格中的 [套用]。
組態
您可以在 <asp>
ApplicationHost.config 檔案的伺服器層級設定 專案。 不過,根據預設,您無法 <asp>
在月臺層級或應用層級設定專案。
屬性
屬性 | 描述 |
---|---|
appAllowClientDebug |
選擇性的 Boolean 屬性。 指定是否啟用用戶端偵錯。 預設值是 false 。 |
appAllowDebugging |
選擇性的 Boolean 屬性。 指定是否啟用伺服器端偵錯。 預設值是 false 。 |
bufferingOn |
選擇性的 Boolean 屬性。 指定是否啟用 ASP 應用程式輸出的緩衝處理。 預設值是 true 。 |
calcLineNumber |
選擇性的 Boolean 屬性。 指定 ASP 是否計算並儲存每個執行程式程式碼的行號,以提供錯誤報表中的數位。 預設值是 true 。 |
codePage |
選擇性 uint 屬性。 指定 ASP 應用程式的預設字元集。 這個值是介於 0 到2147483647範圍內的整數。 例如,值 1252 會將預設字元集設定為用於美式英文和許多歐洲字母的拉丁字元集。 預設值是 0 。 |
enableApplicationRestart |
選擇性的 Boolean 屬性。 指定每當變更組態設定時,是否會自動重新開機 ASP 應用程式。 預設值是 true 。 |
enableAspHtmlFallback |
選擇性的 Boolean 屬性。 指定.htm檔案的名稱是否與所要求的 .asp 檔案相同,如果檔案存在,則會傳送至用戶端,而不是 .asp 檔案。 當要求因為完整要求佇列而遭到拒絕時,就會發生此情況。 預設值是 true 。 |
enableChunkedEncoding |
選擇性的 Boolean 屬性。 指定是否啟用 HTTP 1.1 區塊傳輸編碼。 預設值是 true 。 |
enableParentPaths |
選擇性的 Boolean 屬性。 指定 ASP 頁面是否允許相對於目前目錄或目前目錄上方的路徑。 預設值是 false 。 |
errorsToNTLog |
選擇性的 Boolean 屬性。 指定是否啟用對 Windows 事件記錄檔的 ASP 錯誤記錄。 預設值是 false 。 |
exceptionCatchEnable |
選擇性的 Boolean 屬性。 指定是否啟用 COM 元件例外狀況捕捉。 如果設定為 false,Microsoft 腳本偵錯工具工具不會攔截您正在偵錯之元件所傳送的例外狀況。 預設值是 true 。 |
lcid |
選擇性 uint 屬性。 指定 ASP 應用程式的預設地區設定識別碼。 這個值是介於 0 到2147483647範圍內的整數。 預設值是 0 。 |
logErrorRequests |
選擇性的 Boolean 屬性。 指定 ASP 錯誤是否預設寫入用戶端瀏覽器和 IIS 記錄。 預設值是 true 。 |
runOnEndAnonymously |
選擇性的 Boolean 屬性。 指定 SessionOnEnd 和 ApplicationOnEnd 全域 ASP 函式是否以匿名使用者身分執行。 預設值是 true 。 |
scriptErrorMessage |
選擇性字串屬性。 指定當特定偵錯錯誤未傳送至用戶端時,將傳送至瀏覽器的錯誤訊息。 預設值是 An error occurred on the server when processing the URL. Please contact the system administrator 。 |
scriptErrorSentToBrowser |
選擇性的 Boolean 屬性。 指定是否啟用對用戶端瀏覽器的偵錯特定內容寫入。 預設值是 false 。 |
scriptLanguage |
選擇性字串屬性。 指定 Web 服務器上執行之所有 ASP 應用程式的預設指令碼語言。 預設值是 VBScript 。 |
子元素
元素 | 描述 |
---|---|
cache |
選擇性項目。 指定 ASP 快取設定。 |
comPlus |
選擇性項目。 指定 COM+ 設定。 |
limits |
選擇性項目。 指定各種 ASP 屬性的限制。 |
session |
選擇性項目。 指定 ASP 會話狀態設定。 |
組態範例
下列組態範例會針對名為 Contoso 的月臺上的 ASP 應用程式啟用緩衝處理和會話狀態,並停用相同月臺的父路徑。
<location path="Contoso">
<system.webServer>
<asp enableParentPaths="false" bufferingOn="true">
<session allowSessionState="true" />
</asp>
</system.webServer>
</location>
範例程式碼
下列程式碼範例會在名為 Contoso 的月臺上啟用 ASP 應用程式的緩衝處理和會話狀態,並停用相同網站的父路徑。
AppCmd.exe
appcmd.exe set config "Contoso" -section:system.webServer/asp /enableParentPaths:"False" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/asp /bufferingOn:"True" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/asp /session.allowSessionState:"True" /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 aspSection = config.GetSection("system.webServer/asp", "Contoso");
aspSection["enableParentPaths"] = false;
aspSection["bufferingOn"] = true;
ConfigurationElement sessionElement = aspSection.GetChildElement("session");
sessionElement["allowSessionState"] = true;
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 aspSection As ConfigurationSection = config.GetSection("system.webServer/asp", "Contoso")
aspSection("enableParentPaths") = False
aspSection("bufferingOn") = True
Dim sessionElement As ConfigurationElement = aspSection.GetChildElement("session")
sessionElement("allowSessionState") = True
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var aspSection = adminManager.GetAdminSection("system.webServer/asp", "MACHINE/WEBROOT/APPHOST/Contoso");
aspSection.Properties.Item("enableParentPaths").Value = false;
aspSection.Properties.Item("bufferingOn").Value = true;
var sessionElement = aspSection.ChildElements.Item("session");
sessionElement.Properties.Item("allowSessionState").Value = true;
adminManager.CommitChanges();
VBScript
Set adminManager = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set aspSection = adminManager.GetAdminSection("system.webServer/asp", "MACHINE/WEBROOT/APPHOST/Contoso")
aspSection.Properties.Item("enableParentPaths").Value = False
aspSection.Properties.Item("bufferingOn").Value = True
Set sessionElement = aspSection.ChildElements.Item("session")
sessionElement.Properties.Item("allowSessionState").Value = True
adminManager.CommitChanges()