共用方式為


使用 Xcopy 部署 ASP.NET Web 應用程序

本文章描述如何使用 MS-DOS Xcopy 命令來部署 Microsoft ASP.NET Web 應用程式。

原始產品版本: ASP.NET
原始 KB 編號: 326355

摘要

Xcopy 樣式的部署並不適合所有情況。 對於大型網站和業務線應用程式,我們建議該網站暫時離線。 您希望在部署新內容和應用程式組件時執行此操作。 您可以在方便的排程時間進行此維護。 如要最小化已排定的停機時間,請依照以下步驟操作:

  1. 為要更新的應用程式建立一個新的實體目錄。 將所有新內容複製到新的實體目錄。

  2. 重新設定應用程式的虛擬目錄以指向具有新內容的新實體目錄。

    注意

    當您將新內容部署到 ASP.NET Web 應用程式時,該應用程式可能會重新啟動。 如果您有大型應用程式和具有大量記憶體需求的複雜應用程式,則記憶體使用量可能會增加。 當您重新啟動應用程式時,可能會出現可支援能力問題。 這包括用戶工作階段狀態的遺失。

什麼是 Xcopy 部署

Xcopy 部署描述了在 ASP.NET 中的部署,您可以在其中使用 Microsoft Windows 資源管理器、文件傳輸協議 (FTP) 或 DOS 中的拖放功能Xcopy命令將檔案從一個位置複製到另一個位置。 ASP.NET 應用程式不需要修改登錄檔,並且對託管網站上的託管公司沒有特殊的安裝要求。

Xcopy 部署的優勢

Xcopy 樣式的檔案傳輸簡化了 ASP.NET 網站的部署和維護,因為您無需建立登入檔,也無需註冊任何元件。 Microsoft .NET 應用程式是自我描述的,通常沒有相依性。 通過組件的版本控制,您甚至可以在不停止網頁伺服器的情況下複製應用程式使用的動態連結程式庫 (DLL) 的新副本。

Visual Studio .NET 中 Xcopy 部署和複製專案的差異

Xcopy 部署不需要您在開發電腦或網頁伺服器上安裝任何特殊軟體。 Visual Studio .NET 複製專案方法要求您在遠端伺服器上安裝 Microsoft FrontPage 伺服器擴充功能 (FPSE)。 Xcopy 還允許您僅替換最近已編輯的文件。 您可以手動選擇檔案來取代它們,也可以使用/d切換Xcopy命令指定日期,如下:

xcopy source [destination] /D:m-d-y

將虛擬目錄設置為 IIS 應用程式

如果尚未設定目標目錄,則必須在傳輸檔案之前將其設定為 Microsoft Internet Information Services (IIS) 中的應用程式。 要設定虛擬目錄,請執行以下步驟:

  1. 按一下開始,點選所有程式,再點選系統管理工具,然後按一下網際網路服務管理員
  2. 在左窗格中,右鍵點擊虛擬目錄的名稱,然後點擊特性
  3. 請確定網站名稱或虛擬目錄的名稱列在 [應用程式設定] 下的 [應用程式名稱] 方塊中。 如果不是,請按一下建立

疑難排解

在某些情況下,您無法僅通過 Xcopy 檔案傳輸來完成 ASP.NET Web 應用程式的部署。 這些情況包括以下情況:

  • 需要您安裝在全域組件快取 (GAC) 中的組件庫。 如果必須跨多個應用程式網域共享 ASP.NET 使用的任何組件庫,則必須使用 Gacutil.exe 公用程式將這些組件庫註冊到 GAC 中。 每次部署應用程式時,您都必須取消註冊、取代然後重新註冊組件庫。

  • 元件物件模型 (COM) Interop。 如果 ASP.NET 應用程式通過 COM interop 使用任何 COM 元件,則必須向 COM 服務註冊這些 COM 元件。

  • 服務元件。 Microsoft 建議您使用 Regsvcs.exe 公用程序註冊任何使用 COM 服務的類別(這些服務衍生自System.EnterpriseServices.ServicedComponent類別)。

參考資料