在 IIS 8.0 或更新版本上安裝及設定 Web Deploy

作者 :Jim van de Erve

摘要

在本逐步解說中,我們將示範在 IIS 8.0 或更新版本上安裝及設定 Web Deploy 的步驟,以進行系統管理員或非系統管理員部署。 這表示客戶端能夠使用 Web Deploy 將網站內容發佈至伺服器所需的步驟,即使用戶端沒有伺服器的系統管理員認證也一樣。

Windows 8.0 和 8.1 未隨附遠端連線所需的 Web 管理服務。 如需詳細資訊,請參閱無法在 Windows 8.0 或 8.1 上設定遠端發佈

安裝 Web Deploy

您可以使用 Web Platform Installer (Web PI) 或 Web Deploy MSI 來安裝 Web Deploy。

  • 使用 Web Platform Installer (Web PI) 安裝 Web 主控提供者的建議伺服器組態,其中包括 Web Deploy
  • 使用 Web PI 個別安裝 Web Deploy (與其相依性)
  • 使用 Web Deploy 安裝程式。

當 Web Platform Installer 安裝 Web 主控提供者的建議伺服器組態時,它會使用 Web 主控提供者最常見的部署來設定 Web 伺服器。 此套件可確保已安裝 Web Deploy 所需的 IIS 8.0 或更新版本必要條件。 系統會自動選取 SQL Server 管理物件和 SQL Server 等相依性以進行安裝,並使用 Web PI 必要條件安裝,例如 Web 服務管理處理程式。 套件包含一些選擇性元件,例如 PHP 和 MySQL,您可以按兩下這些套件旁的 X ,選擇不要使用此套件組合進行安裝。

適用於 Web 主控提供者的建議伺服器組態可以安裝在 Windows 2012 Server 或更新版本上。 如需使用 IIS 7 在舊版 Windows Server 上安裝的相關信息,請參閱 在 IIS 7 上安裝及設定 Web Deploy

  1. 下載 Web Platform Installer
  2. 開啟 Web PI。
  3. 在 Web PI 中,按右上角的搜尋列,在 [搜尋] 中輸入「建議」,然後按 Enter
  4. 選取 [Web 主控提供者的建議伺服器組態],然後按兩下 [ 新增]。Web Platform Installer 四點六點的螢幕快照。[Web 主控提供者的建議伺服器組態] 選項會反白顯示。
  5. 按一下 [Install] 。
  6. 在 [ 必要條件] 頁面上,按兩下 [我接受]。
  7. 安裝完成後,按兩下 [ 完成]。

使用 Web Platform Installer 個別安裝 Web Deploy

您可以個別安裝 Web Deploy 與其相依性,例如 Web Management Service (WMSvc) 。 您可以安裝下列版本的 Web Deploy。

  • 不含配套 SQL 的 Web Deploy 3.5:單獨安裝 Web Deploy。
  • Web Deploy 3.5:Web Deploy 加上 SQL 資料庫發行的支援
  • 裝載伺服器的Web Deploy 3.5:Web Deploy 加上IIS/ASP.NET相依性,並支援SQL資料庫發佈。 這包括安裝基本 IIS 和管理服務的相依性, (非系統管理員發佈) 和 PowerShell 2.0 或更新版本 (用來在安裝) 期間執行某些基本非系統管理員發佈設定。

如果您直接在 Web PI 中安裝 Web Deploy,而不是作為 Web 主控提供者的建議伺服器組態的一部分,則可能不會安裝 Web Deploy 所需的相依性。

使用 Web PI 時,Web Deploy 可以安裝在 Windows 2012 Server 或更新版本,或 Windows 8.0 或更新版本。 如需使用 IIS 7 在舊版 Windows Server 或 Windows 上安裝的相關信息,請參閱 在 IIS 7 上安裝及設定 Web Deploy

若要使用 Web PI 個別安裝 Web Deploy:

  1. 下載 Web Platform Installer
  2. 在您的桌面上開啟 WebPI。
  3. 按兩下右上角的搜尋列,輸入 「Web Deploy」,然後按 Enter
    Web Platform Installer 四點六的螢幕快照。反白顯示適用於節點點 J S 的 Windows Azure S D K。
  4. 選取您想要的 [Web 部署],然後按兩下 [ 新增]。
    Web Platform Installer 四點六的螢幕快照。Web Deploy 三點五已醒目提示。
  5. 在 [ 必要條件] 頁面上,按兩下 [我接受]。
  6. 安裝完成後,按兩下 [ 完成]。

使用 Web 部署安裝程式安裝 Web Deploy

您可以使用 MSI 安裝程式直接安裝 Web Deploy。 通常不建議針對新手使用者直接使用 MSI,因為可能需要個別安裝建議或必要的相依產品。 使用 MSI 而不是 Web PI 在伺服器上安裝 Web Deploy 時,下列限制可能會建立問題:

  • MSI 將不會安裝 SQL 共用管理物件 (SMO) ,這是 SQL Server 資料庫部署的必要專案。 您可以使用 Web PI 來安裝此元件,以啟用 SQL Server 資料庫部署。
  • 如果未安裝 Web Management Service,MSI 將不會安裝 Web Management Service 處理程式元件。 非系統管理員部署需要處理程式元件。 必須先安裝 Windows 元件 IIS,包括管理服務,才能安裝處理程式元件。
  • 使用 Web Deploy MSI 直接安裝 Web Deploy 時,除非已安裝 PowerShell v2 或更新版本,否則不會針對非系統管理員部署設定 Web 管理服務。

使用 Web Deploy 安裝程式,Web Deploy 可以安裝在 Windows 2012 Server 或更新版本上,或 Windows 8.0 或更新版本。

若要從 .msi 檔案安裝 Web Deploy:

  1. 移至 Web Deploy 下載頁面。
  2. 在 [Web Deploy 下載] 頁面上,移至 [ 下載 Web 部署 ] 區段,針對您想要的語言,選取 [x86 ] 或 [x64]。
  3. 執行 Web Deploy .msi,並瀏覽安裝程式精靈,選取您想要在 [自定義安裝] 頁面中的功能。Microsoft Web Deploy 三點五設定對話框的螢幕快照。[自訂安裝] 頁面隨即顯示。I S Manager U I 模組已醒目提示。

為委派的非系統管理員部署設定月臺

安裝 Web Deploy 之後,所有伺服器層級設定都會完成,以供非系統管理員發佈使用;不過,月臺層級需要額外的設定。 您可以使用PowerShell或 IIS 管理員來完成此月臺設定,如下所示。

無法在 Windows 8.0 或 8.1 上設定遠端發佈

您無法針對裝載於 IIS Windows 8.0 或 8.1 上的網站,使用 Web Deploy 設定遠端發佈。 原因是 Windows 的用戶端 SKU 未隨附遠端連線所需的 Web 管理服務。 因此,在 Windows 8.0 或 8.1 上,IIS 管理員許可權圖示和設定遠端發佈所需的 [設定 Web 部署發佈] 部署選項無法在 IIS 管理員中使用。

當您使用 [新增角色和功能精靈] 在 Windows Server 2012 或更新版本上安裝管理服務角色時,就會安裝並啟用 Web 管理服務。 IIS 管理員許可權圖示適用於 IIS 管理員管理區域中的網站,而 [設定 Web 部署發佈部署] 選項位於 IIS 管理員中網站的 [部署] 功能表中。 透過這些功能,Web 管理服務可讓您使用 Web Deploy 從遠端電腦設定發佈至 Web 伺服器。

使用 PowerShell 為非系統管理員設定 Web Deploy

  1. 使用 Web Deploy PowerShell 腳本,為新的或現有的非系統管理員使用者建立新的網站或設定現有網站的許可權。 如需詳細資訊,請參閱 自動化 Web 部署設定Web Deploy PowerShell Cmdlet 的 PowerShell 腳本。

使用 IIS 管理員為非系統管理員設定 Web Deploy

下列步驟會使用 IIS 管理員 UI,為現有使用者設定在現有網站上發佈。

  1. 啟動 IIS 管理員 (開啟 伺服器管理員,按兩下 [工具],然後開啟 [IIS 管理員]。

  2. 展開 [ 月臺] 節點,然後按兩下網站。

  3. 在站臺主窗格的 [管理 ] 區域中,按兩下 [IIS 管理員許可權]。 Internet Information I S Manager 的螢幕快照。[站臺] 節點會顯示在左窗格中。已選取 [I S 管理員] 圖示。

  4. 在 [ 動作] 窗格中,按兩下 [ 允許使用者]。 [I S 管理員許可權] 窗格的螢幕快照。[動作] 窗格會顯示在右側。[允許使用者] 按鈕位於 [動作] 窗格中。

  5. 在 [ 允許使用者...] 對話框中,選取 [Windows ],按兩下 [ 選取]。[允許使用者] 對話框的螢幕快照。已選取 Windows。

  6. 在 [ 選取使用者或群組 ] 對話框中,於 [輸入要選取的物件名稱] 中,輸入具有網域發佈許可權的非系統管理員 Windows 用戶名稱。 按兩下 [檢查名稱],然後在驗證名稱之後,按兩下 [ 確定]。[選取使用者或群組] 對話框的螢幕快照。[輸入要選取的物件名稱] 方塊位於 [選取物件類型] 的方塊底下,以及 [從這個位置] 方塊中。

  7. 在 [ 允許使用者...] 對話框中,按兩下 [確定]。[允許使用者] 對話框的螢幕快照。已選取 Windows。在 Windows 方塊中,有 C O N T O S O 反斜杠 john doe 文字。您可以在底部找到 O K 按鈕。

  8. 確認已在 [IIS 管理員許可權 ] 窗格中輸入具有網域的名稱。[I S 管理員許可權] 窗格的螢幕快照。在 [名稱] 底下是 C O N T O S O 反斜杠 john doe 文字。在 [路徑] 底下為 [默認網站]。

  9. 以滑鼠右鍵按下您要設定的網站,指向 [ 部署],然後按兩下 [ 設定Web部署發佈...]。隨即會出現下列 UI:

    注意:如果未在網站的功能表中顯示 [部署] 命令,請關閉並重新開啟 IIS 管理員。

    [設定 Web 部署發佈] 對話框的螢幕快照。在 [選取要授與發佈許可權的使用者] 下,是 C O N T O S O 反斜杠 john doe 文字。

  10. 單擊 [選取使用者] 的向下箭號 來授與發佈許可權,然後選取您為 IIS 管理員許可權輸入的使用者。[設定 Web 部署發佈] 窗格的螢幕快照。在 [選取要授與發佈許可權的使用者] 下,醒目提示文字 C O N T O S O 反斜杠 john doe。

  11. 按一下 [設定] 。

    將會顯示下列記錄列:

  • 針對 『NonAdminUser』 啟用發佈
  • 在上授與 『NonAdminUser』 完整控制權 C:\inetpub\wwwroot\test
  • 已成功建立的配置檔 C:\Users\janedoe\Desktop\CONTOSO\_johndoe\_Default Web Site.PublishSettings

非系統管理員 Windows 使用者 (NonAdminUser) 現在可能會發佈至網站。

[設定 Web 部署發佈] 對話框的螢幕快照。在 [選取要授與發佈許可權的使用者] 下,是 C O N T O S O 反斜杠 john doe 文字。顯示 [設定] 按鈕。

安裝和設定適用於系統管理員部署的Web Deploy

需求:

使用上述其中一個程式安裝 Web Deploy。

疑難解答常見問題:

  • 如果您要升級 Web Deploy 的現有安裝,請務必在系統管理命令提示字元執行下列命令來重新啟動處理程式和代理程式服務:

  • net stop msdepsvc & net start msdepsvc

  • net stop wmsvc & net start wmsvc

  • 請確定您的防火牆允許連線至您使用的服務。 根據預設,Web Deployment Agent​ 服務 (MsDepSvc) 接聽埠 80,而 Web Management Service (WmSvc,也稱為「處理程式」) 預設會接聽埠 8172。

  • 您必須使用內建的系統管理員帳戶,或從已新增至 Administrators 群組的網域帳戶執行 MsDepSvc。 不是內建帳戶的本機系統管理員將無法與 MsDepSvc 搭配使用。

  • 檢查 .NET 4.0 是否已向 IIS 註冊:

    徵兆:已安裝 .NET 4.0,但 IIS 中沒有 .NET 4.0 應用程式集區或處理程序對應。 例如,您無法流覽至使用 .NET 4.0 (的應用程式,例如,在您發佈應用程式之後,根據 WebMatrix 的網站範本應用程式) 的應用程式。

    原因:您的計算機已安裝 .NET 4.0,再安裝 IIS。

    解決方案:執行下列命令以向 IIS 註冊 .NET 4.0: %systemdrive%\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -iru