將網站從 IIS 6.0 遷移至 IIS 7 或更新版本

依小費 A

本快速入門將協助您使用 Web 部署工具,將網站從 IIS 6.0 移轉至 IIS 7 或更新版本。

我可以使用 Web 部署工具完成哪些類型的移轉?

  • 將 1 或 1,000 個網站從 IIS 6.0 移轉至 IIS 7 或更新版本,包括所有組態設定、內容和憑證
  • 移轉單一應用程式
  • 將整個伺服器 (所有網站、應用程式集區等) 從 IIS 6.0 移轉至 IIS 7 或更新版本
  • 將包含月臺、應用程式集區、元件、COM 物件、登錄機碼、內容等的自訂資訊清單從 IIS 6.0 移轉至 IIS 7 或更新版本

必要條件

本指南需要下列必要條件:

  • .NET Framework 2.0 SP1 或更新版本
  • Web 部署工具 1.1

注意:如果您尚未安裝 Web 部署工具,請參閱 安裝和設定 Web Deploy

第 1 部分 - 檢視網站的相依性

  1. 執行下列命令以取得網站的相依性:

    msdeploy -verb:getDependencies -source:metakey=lm/w3svc/1
    
  2. 檢閱相依性的輸出,並尋找月臺所使用的任何腳本對應或已安裝元件。 例如,如果網站正在使用 Windows 驗證,您會看到 < 相依性名稱=「WindowsAuthentication」 / > 。

  3. 如果您的網站正在繼承任何腳本對應,這些對應將不會列在相依性中,您也應該手動檢閱網站的腳本對應。

  4. 編譯目的地上所需的元件清單。

如需分析 getDependencies 輸出的詳細步驟,請參閱

第 2 部分 - 設定目標

檢閱相依性清單,並將其安裝在目的地伺服器上。

例如,假設您有下列專案用於您的網站:

  • ASP.NET
  • Windows 驗證
  • 匿名驗證

根據您的相依性分析,您會安裝對應的元件和模組。

第 3 部分 – 使用套件檔案將您的網站移轉至目標

  1. 請一律備份目的地伺服器。 即使您只是測試,它還是可讓您輕鬆地還原伺服器的狀態。

    %windir%\system32\inetsrv\appcmd add backup "PreWebDeploy"
    
  2. 在來源伺服器上執行下列命令,以建立 (壓縮) 伺服器的封裝:

    msdeploy -verb:sync  -source:metakey=lm/w3svc/1 -dest:package=c:\Site1.zip > WebDeployPackage.log
    
  3. 將封裝檔案複製到目的地伺服器。

  4. 在目的地伺服器上執行下列命令,以驗證執行 同步 處理作業時會發生什麼情況:

    msdeploy -verb:sync -source:package=c:\Site1.zip -dest:metakey=lm/w3svc/1 -whatif > WebDeploySync.log
    
  5. 驗證輸出之後,請再次執行相同的命令,而不使用 whatif 旗標:

    msdeploy -verb:sync -source:package=c:\Site1.zip -dest:metakey=lm/w3svc/1 > WebDeploySync.log
    

{選擇性 - 使用 Web Deployment Agent​ 服務將您的網站遷移至目標}

如果您不想使用套件,可以使用 Web Deployment Agent​ Service (MsDepSvc,也稱為「遠端服務」) ,從 IIS 6.0 同步處理至 IIS 7 或更新版本。

  1. 視您想要從遠端來源或遠端目的地同步處理而定,在來源或目的地上安裝遠端服務。

  2. 在電腦上啟動服務。

    net start msdepsvc
    
  3. 執行下列命令,以執行從本機來源到遠端目的地的「推送」同步處理, (將 Server1 取代為遠端電腦) 的名稱。 請先使用 whatif 旗標執行命令,然後在您確認命令會執行您想要的動作之後,就不需要它。

    msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:metakey=lm/w3svc/1,computername=Server1 -whatif > msdeploysync.log
    
  4. 或者,執行下列命令,以從遠端來源執行「提取」同步處理至本機目的地 (將 Server1 取代為遠端電腦) 的名稱。 請先使用 whatif 旗標執行命令,然後在您確認命令會執行您想要的動作之後,就不需要它。

    msdeploy -verb:sync -source:metakey=lm/w3svc/1,computername=Server1 -dest:metakey=lm/w3svc/1 -whatif > msdeploysync.log
    

您現在已完成網站移轉。 若要確認,請測試流覽至目的地伺服器上的網站。 如需疑難排解說明,請參閱

總結

您現在已藉由檢視相依性、設定目的地 IIS 伺服器,以及使用套件檔案或 Web Deployment Agent​ 服務,將網站從來源 IIS 6.0 伺服器同步處理至目的地 IIS 7 或更新版本伺服器。