共用方式為


HOW TO:在 IIS 中設定 HTTP 處理常式副檔名

更新:2007 年 11 月

根據預設,網際網路資訊服務 (IIS) 只會將特定檔案類型的要求傳遞給 ASP.NET 以提供服務。副檔名為 .aspx、asmx 和 .ashx 的檔案,已經對應至 ASP.NET ISAPI 擴充程式 (Aspnet_isapi.dll)。這適用於 IIS 6.0、以傳統模式 (Classic Mode) 執行的 IIS 7.0,以及以整合模式 (Integrated Mode) 執行之 IIS 7.0 中的 Managed 處理常式。

若要讓 IIS 將其他副檔名傳送至 ASP.NET,您必須在 IIS 中註冊副檔名。如需處理常式如何參與應用程式生命週期的詳細資訊,請參閱 IIS 5.0 和 6.0 的 ASP.NET 應用程式生命週期概觀IIS 7.0 的 ASP.NET 應用程式生命週期概觀

若要對應 IIS 6.0 中的副檔名

  1. 開啟 IIS 管理員。

  2. 展開 Web 伺服器電腦的節點,接著展開 [網站],然後展開 [預設的網站]。

  3. 以滑鼠右鍵按一下應用程式的名稱,然後按一下 [屬性]。

    注意事項:

    如需建立 ASP.NET 應用程式的詳細資訊,請參閱 HOW TO:在 IIS 6.0 中建立和設定本機 ASP.NET 網站

  4. 按一下 [虛擬目錄] 索引標籤,然後按一下 [組態]。

  5. 在 [對應] 索引標籤上,按一下 [加入]。

    [新增/編輯應用程式副檔案名對應] 對話方塊隨即顯示。

  6. 在 [可執行檔] 方塊中,輸入或瀏覽至檔案 Aspnet_isapi.dll。根據預設,檔案位於下列位置:

    %windows%\Microsoft.NET\Framework\version\
    
    注意事項:

    您可以從其他對應取得完整路徑和檔名,例如對應至 .aspx 檔案。

  7. 在 [副檔名] 方塊中,輸入副檔名,例如 .sample。

    注意事項:

    請確定包含點 (.),這是副檔名的一部分。

  8. 視副檔名在應用程式中所代表的意義,選取 [確認檔案存在] 核取方塊。選擇這些選項:

    • True. 副檔名代表應用程式中的實際檔案。在這個情況下,如果磁碟機上沒有要求的檔案,IIS 就會顯示錯誤。

    • False. 副檔名不代表實際檔案。副檔名是由對應至 ASP.NET 中副檔名的類別,動態進行處理。

  9. 按一下 [確定] 然後關閉 IIS 管理員。

若要對應以傳統模式執行的 IIS 7.0 中的副檔名

  1. 開啟 IIS 管理員。

    注意事項:

    在 和 Windows Server 2008 中,如果啟用使用者帳戶控制 (UAC) 功能,就會提示您繼續存取管理員。如需詳細資訊,請參閱使用者帳戶控制概觀 (英文)。

  2. 展開 Web 伺服器電腦的節點,接著展開 [網站],然後展開 [預設的網站]。

  3. 選取應用程式的節點。

    [功能檢視] 窗格隨即顯示。

  4. 按兩下 [功能檢視] 中的 [處理常式對應]。

  5. 按一下 [執行] 窗格中的 [新增指令碼對應]。

    [新增指令碼對應] 對話方塊隨即顯示。

  6. 在 [新增指令碼對應] 對話方塊中,指定下列項目:

    • 要求路徑:要對應的檔案名稱或副檔名。

    • 可執行檔:會處理要求的 .exe 或 .dll 檔案的路徑。若為傳統模式,指定 ASP.NET ISAPI 擴充程式 (Aspnet_isapi.dll)。

    • 名稱:描述性的名稱。

  7. 按一下 [確定] 關閉 [新增指令碼對應] 對話方塊。

    注意事項:

    在 IIS 7.0 中使用 IIS 管理員加入自訂處理常式副檔名,就等於在 ASP.NET 應用程式的 Web.config 檔案中註冊處理常式副檔名。註冊會在 system.webServer 群組的 handlers 區段中加入 handler 項目。

  8. 開啟應用程式的 Web.config 檔。

  9. 找出 system.web 區段的 httpHandlers 項目,並加入副檔名的項目。

    注意事項:

    副檔名必須註冊在 httpHandlers 項目和 handlers 項目中。

若要對應以整合模式執行的 IIS 7.0 中的副檔名

  1. 遵循上一個程序的步驟 1 至 3。

  2. 按一下 [執行] 窗格中的 [新增 Managed 處理常式]。

    [新增 Managed 處理常式] 對話方塊隨即顯示。

  3. 在 [新增 Managed 處理常式] 對話方塊中,指定下列項目:

    • 要求路徑:要對應的檔案名稱或副檔名。

    • 型別:Managed 處理常式的型別 (類別) 名稱。如果處理常式是在 ASP.NET 應用程式的 App_Code 資料夾中定義的,則其型別名稱會顯示在下拉式清單中。

    • 名稱:描述性的名稱。

  4. 按一下 [確定] 關閉 [新增 Managed 處理常式] 對話方塊。

    注意事項:

    在 IIS 7.0 中使用 IIS 管理員加入自訂處理常式副檔名,就等於在 Web.config 檔案中註冊處理常式副檔名。

    注意事項:

    如果處理常式所服務的自訂擴充程式是在以整合模式執行的 IIS 7.0 中,則只需要在 handlers 項目中註冊。如果您也要將註冊保存在 httpHandlers 項目中,請在 system.webServer 區段中建立 validation 項目 (如果不存在),並將其 validateIntegratedModeConfiguration 屬性設定為 false。如需詳細資訊,請參閱 HOW TO:隱藏 IIS 7.0 註冊警告

請參閱

工作

HOW TO:登錄 HTTP 處理常式