Web 部署錯誤碼

適用於: Internet Information Services 7.0、Internet Information Services 7.5、Internet Information Services 8.0

針對某些常見的錯誤案例,Web Deploy 會顯示錯誤訊息。 本文說明為何會顯示錯誤訊息,並提供避免錯誤的步驟。 錯誤訊息可能會根據 Web Deploy 的啟動方式而有所不同。 例如,Microsoft WebMatrix 會選擇顯示自定義錯誤訊息。 接下來幾個區段中所列的錯誤訊息會顯示在 msdeploy.exe 命令行和 API 上:

MySqlDumpNotFound

診斷

Web Deploy 可能找不到 mysqldump.exe 可執行檔。 MySQL 資料庫部署需要此可執行檔。

解決方案

您可以嘗試下列其中一個因應措施:

  • 將可執行檔放在 中 C:\Program Files\MySQL\MySQL Server\bin
  • 設定登錄 REG_SZ 機碼以指向可執行檔。 例如,將 設定為HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IIS Extensions\MSDeploy\<version>\MySqlDumpPathc:\mysqldump\mysqldump.exe

RemoteAppNotFound

診斷

找不到遠端應用程式。 如果您嘗試傾印 「remotesite/remoteapp」,其中 「remoteapp」 實際上不存在,就會發生此錯誤。

解決方案

指定實際存在的遠端應用程式名稱。

FileOrFolderNotFound

診斷

如果您嘗試在不存在的檔案或資料夾上執行 SetAcl ,就會發生此錯誤。

解決方案

指定存在的檔案或資料夾。

ERROR_DESTINATION_INVALID

診斷

計算機名稱輸入錯誤,或無法連線到計算機。

解決方案

請嘗試檢查電腦名稱是否有效。 請嘗試手動 Ping 電腦。

ERROR_DESTINATION_NOT_REACHABLE

診斷

遠端電腦上未安裝或無法連線到 Web 管理服務或遠端代理程式。

解決方案

根據您要連線的遠端計算機,確認遠端代理程式服務或 Web 管理服務已啟動。 您可以在遠端電腦上執行 net start wmsvcnet start msdepsvc ,以確保這些服務已啟動。 此外,請確定防火牆不會中斷與目的地的通訊。

ERROR_USER_UNAUTHORIZED

診斷

此錯誤碼可能會因為各種原因而顯示。 這通常表示驗證或授權問題,而且可能會因為下列任何原因而發生:

  • 使用者不存在。
  • 如果使用 Web Management Service 進行連線,使用者就無法存取網站的 IIS 管理員。
  • 網站不存在。
  • 密碼不正確。

解決方案

若要使用 Web 管理服務進行連線,請遵循下列步驟:

  1. 確認使用者名稱和密碼正確無誤。
  2. 確認月臺存在。
  3. 確認您具有網站範圍的 IIS 管理員許可權。

若要使用遠端代理程式服務進行連線,請遵循下列步驟:

  1. 確認使用者名稱和密碼正確無誤。

  2. 確認您指定的使用者帳戶是遠端電腦上 Administrators 群組的成員。

    注意事項

    如果您不是使用內建系統管理員,請建立名為 「MSDepSvcUsers」 群組的新群組,並將新的系統管理員新增至該群組。

  3. 確認月臺存在。

ERROR_USER_NOT_ADMIN

診斷

如果您嘗試連線到遠端代理程式服務,但尚未提供適當的系統管理員認證,則會顯示ERROR_USER_NOT_ADMIN程序代碼。

解決方案

遠端代理程式服務接受內建的系統管理員或網域系統管理員認證。 如果您有非網域設定,而且想要使用內建系統管理員以外的帳戶,請執行下列步驟:

  1. 在遠端電腦上建立個別的使用者群組 MSDepSvcUsers
  2. 在本機和遠端電腦上建立本機帳戶 A
  3. 在遠端電腦上將 新 A 增至 MSDepSvcUsers
  4. 使用帳戶 A 來發佈,這可讓您在不需要內建系統管理員帳戶的情況下發佈。

ERROR_CERTIFICATE_VALIDATION_FAILED

診斷

Web Deploy 端點所呈現的憑證不受信任或無效。 如果遠端伺服器具有遠端代理程式服務或 Web 管理服務的自我簽署憑證,通常會發生這種情況。

解決方案

請在端點上安裝受信任的憑證,或嘗試略過憑證驗證。

  1. 命令行msdeploy.exe ,傳遞旗標 -allowUntrusted

  2. 從 Visual Studio 發佈 UI,檢查 Allow Untrusted

  3. 從 Visual Studio 部署套件 (例如, MyApp.deploy.cmd) 傳遞 -allowUntrusted 旗標。

  4. 將 新 <AllowUntrustedCertificate>true</AllowUntrustedCertificate> 增至 pubxml 檔案:

    <PropertyGroup>
      <AllowUntrustedCertificate>true</AllowUntrustedCertificate>
    </PropertyGroup>
    

ERROR_PROXY_GATEWAY

診斷

Proxy 閘道阻止 Web Deploy 與遠端 Web Deploy 端點通訊。

解決方案

Web Deploy 不會讀取系統 Proxy 設定。 因應措施是執行下列步驟來嘗試停用系統 Proxy:

  1. 啟動 Internet Explorer。
  2. 選取 [工具]>[選項]
  3. 選取 [連線]
  4. 選取 [LAN 設定]
  5. 停用所有複選框。

ERROR_SITE_DOES_NOT_EXIST

診斷

指定的 IIS 網站不存在。

解決方案

確認指定的網站確實存在。 有時候,如果您已指定 / ,而不是 \ 在網站 URL 中,可能會收到此錯誤。 請嘗試將 變更 /\

ERROR_APP_DOES_NOT_EXIST

診斷

指定的應用程式不存在於 IIS 中。

解決方案

請檢查 IIS 管理員,確定您已正確指定應用程式路徑的名稱。

ERROR_USER_NOT_AUTHORIZED_FOR_IISAPP、

ERROR_USER_NOT_AUTHORIZED_FOR_DBFULLSQL、
ERROR_USER_NOT_AUTHORIZED_FOR_DBMYSQL、
ERROR_USER_NOT_AUTHORIZED_FOR_SETACL、
ERROR_USER_NOT_AUTHORIZED_FOR_APPPOOLNETFX、
ERROR_USER_NOT_AUTHORIZED_FOR_APPPOOLPIPELINE、
ERROR_USER_NOT_AUTHORIZED_FOR_RECYCLEAPP、
ERROR_USER_NOT_AUTHORIZED_FOR_CREATEAPP、
ERROR_USER_NOT_AUTHORIZED_FOR_CONTENTPATH

列出的錯誤群組會共用下列診斷、解析和因應措施:

診斷

非系統管理用戶嘗試對使用者目前未獲授權的 Web Deploy 提供者執行作業。

解決方案

Web Deploy 安裝程式預設會建立管理服務委派規則,允許非系統管理員使用此提供者執行作業。 檢查此提供者所需的委派規則是否已正確設定。

因應措施

[程式>控制台,在 Web Deploy 上執行 [修復]。 或者, 手動建立委派規則。

ERROR_USER_NOT_AUTHORIZED_FOR_DEPLOYMENTPROVIDER

診斷

非系統管理用戶嘗試對使用者目前未獲授權的 Web Deploy 提供者執行作業。 如果您嘗試與 Web Deploy 安裝程式未建立委派規則的提供者一起執行作業,則會顯示此錯誤碼。

解決方案

Web Deploy 安裝程式不會為此提供者建立委派規則。 手動建立委派規則。

ERROR_INSUFFICIENT_ACCESS_TO_SITE_FOLDER

診斷

當您嘗試以非系統管理員身分透過 Web 管理服務連線時,可能會發生此錯誤:

  • 若要使用 IIS 管理員認證進行連線,Web 管理服務的身分識別 (通常本地服務) 需要網站根資料夾的完全控制許可權,才能在下方建立檔案和資料夾。
  • 若要使用 Windows 認證進行連線,Windows 使用者需要完全控制網站的根資料夾,才能建立檔案和資料夾。

解決方案

在網站的根資料夾上授與適當的帳戶完全控制。 或者,執行下列步驟:

  1. 啟動 IIS 管理員 ,然後以滑鼠右鍵按兩下有問題的網站。
  2. 按兩下 [部署>設定Web Deploy 發佈]。
  3. 選取適當的用戶名稱。
  4. 按一下 [設定]

ERROR_INSUFFICIENT_ACCESS_TO_APPHOSTCONFIG

診斷

為 createApp 委派規則指定的 RunAs 身分識別需要 IIS 伺服器 applicationHost.config 檔案的寫入許可權。

解決方案

針對 createApp 委派規則的 RunAs 身分識別,提供 IIS 伺服器 applicationHost.config 檔案的寫入存取權。

ERROR_INVALID_CONNECTION_STRING

診斷

指定了無效的資料庫 連接字串,導致 dbFullSqldbMySql 提供者無法正確執行。 如果 連接字串 格式不正確 (範例 Se v ver=localhost;...) 或 連接字串 包含目標資料庫伺服器無法辨識的索引鍵,就會發生此錯誤。

解決方案

確認 連接字串 有效。

ERROR_SQL_EXECUTION_FAILURE

診斷

發生 SQL 文稿執行失敗。

解決方案

此錯誤可能會因為許多原因而發生。 如需詳細資訊,請參閱 Windows 上的 Web 開發

ERROR_TYPE_NOT_FOUND_IN_ASSEMBLY

診斷

dbFullSql Web Deploy 的提供者需要伺服器管理物件第 10 版或更新版本。

解決方案

SQL 提供者因為遺漏相依性而無法執行。 請確定已安裝 Microsoft SQL Server 管理物件 (版本 10 或更新版本) 。

ERROR_OBJECT_TO_BE_DELETED_DOES_NOT_EXIST

診斷

Web Deploy 原本會找到要刪除的物件,但嘗試刪除該物件時,該物件便遺失。

解決方案

執行同步處理時,請確定沒有其他外部進程正在修改目標。

ERROR_APPPOOL_VERSION_MISMATCH

診斷

來源應用程式集區版本與目的地應用程式集區版本不同。

解決方案

您可以手動變更應用程式集區版本,以在來源和目的地之間進行比對,或使用 apppoolnetfx 提供者自動進行。

ERROR_CENTRAL_CERT_STORE_SETTINGS_CANNOT_BE_READ

診斷

中央證書存儲無法用於您目前的組態。

解決方案

您必須確定您使用的是 IIS 8 或更新版本。 如果您在 64 位伺服器上執行 msdeploy.exe ,請確定您使用的是 64 位版本的可執行檔。

ERROR_CENTRAL_CERT_STORE_NOT_CONFIGURED_PROPERLY

診斷

集中式 SSL 證書存儲未正確安裝或設定。 IIS 7.5 或更早版本也不支援這項功能。

解決方案

確認您要同步處理的伺服器是否正在執行 IIS 8 或更新版本。 也請確認該伺服器上已安裝並設定集中式 SSL 證書存儲。

ERROR_MISSING_REQUIRED_DEPENDENCIES

診斷

AppHostAuthOverride 提供者需要 IIS 7 或更新版本。

解決方案

請確定您要修改的目的地伺服器正在執行 IIS 7 或更新版本。

ERROR_COULD_NOT_CONNECT_TO_REMOTESVC

診斷

Web Deploy 無法連線到遠端服務。

解決方案

請確定:

  • 您可以 Ping 遠端電腦。
  • msdepsvcwmsvc 服務會在遠端伺服器上啟動。
  • 您的防火牆不會封鎖目的地埠的連入連線。 如果您使用預設安裝,則 會是80,msdepsvc而針對則為8172。wmsvc

ERROR_FRAMEWORK_VERSIONS_DO_NOT_MATCH

診斷

如果您要在已安裝不同 .NET 版本的兩部計算機之間執行網頁伺服器同步處理,可能會發生ERROR_FRAMEWORK_VERSIONS_DO_NOT_MATCH錯誤。

解決方案

根據預設,Web Deploy 偏好使用其組態檔中指定的 .NET 版本。 如果 Web Deploy 在用戶端上使用的 .NET 版本與伺服器上的版本不同,則會封鎖 Web 伺服器同步處理,以防止從不同版本的 .NET 移轉設定。 若要解決此問題,您有兩個選項:

  1. netFxVersion使用提供者設定來通知 Web Deploy 要移轉的 .NET 設定。 以下是命令行範例,其會強制 Web Deploy 同步處理 .NET 設定:

    msdeploy.exe -verb:sync -source:webserver,machineconfig32.netfxversion=2,machineconfig64.netfxversion=2,rootwebconfig32.netfxversion=2,rootwebconfig64.netfxversion=2 -dest:webserver,machineconfig32.netfxversion=2,machineconfig64.netfxversion=2,rootwebconfig32.netfxversion=2,rootwebconfig64.netfxversion=2,computername=destServername

  2. 在客戶端與伺服器之間的相同 .NET 版本中執行 Web Deploy。 在用戶端上,針對第一個指定的 supportedRuntime .NET 版本變更檔案中的 %programfiles%\IIS\Microsoft Web Deploy V3\msdeploy.exe.config 版本項目順序 (如需範例) ,請參閱 gacInstall 提供者 。 這表示 .NET 的版本,假設其已安裝在您的系統上。 在伺服器端,您可以針對 執行相同的動作 %programfiles%\IIS\microsoft web deploy\msdepsvc.exe.config。 如果您修改此檔案,請務必重新啟動和 的 Web Deployment Agent​ Services net stop msdepsvcnet start msdepsvc

ERROR_HTTPCERT_BINDING_NOT_FOUND

診斷

找不到指定的系結。

解決方案

netsh http show sslcert從命令行執行 ,以確認指定的系結存在。 如果找不到,您可能需要透過 IIS 管理員重新建立它。

ERROR_INCORRECT_PARAMETER_TAG

診斷

傳遞了不正確的參數標記。

解決方案

使用 SQL、SQLCE 或 MYSQL 標籤重新執行 Microsoft Deploy。

ERROR_INVALID_PATH

診斷

提供者路徑無效。

解決方案

您的提供者的路徑可能會因您使用的提供者而有所不同。 若要深入瞭解您所使用的提供者,請參閱 Web Deploy 提供者

ERROR_INVALID_SETTING_SPECIFIED

診斷

指定的提供者設定無效。

解決方案

若要深入瞭解您所使用的提供者,請參閱 Web Deploy 提供者

ERROR_INVALID_SETTING_VALUE_SPECIFIED

診斷

提供者設定值無效。

解決方案

若要深入瞭解您所使用的提供者,請參閱 Web Deploy 提供者

ERROR_SNI_BINDINGS_NOT_SUPPORTED

診斷

只有 IIS 8 或更新版本才支援 SNI 系結。

解決方案

SNI 系結只能在 IIS 8 或更新版本上建立。

ERROR_FAILED_TO_RESTORE_BACKUP

診斷

Web Deploy 無法還原備份。

解決方案

確認下列幾點:

  • 指定的備份存在於伺服器上。
  • 如果備份內有資料庫,則會在 連接字串 提供者設定中指定 連接字串。

ERROR_BACKUPS_ARE_NOT_CONFIGURED_PROPERLY

診斷

目的地伺服器上的備份功能未正確設定。

解決方案

檢查事件記錄檔中是否有設定錯誤的提示。 驗證儲存在 applicationHost.config 檔案中的設定是否符合BackupManagerSchema.xml的 IIS 架 檔案。

ERROR_CANNOT_CREATE_BACKUP

診斷

Web Deploy 無法在目的地伺服器上建立新的備份。

解決方案

確認:

  • 如果您要執行 appHostConfig 提供者同步處理,請確定提供者的路徑不是空的。
  • 如果指令清單中有多個使用虛擬路徑的提供者,請確定所有路徑都指向相同的應用程式。
  • 如果您要執行手動備份,請確定伺服器備份設定中的功能已開啟。
  • 如果傳回給客戶端的錯誤訊息未包含必要的資訊,請檢查伺服器事件記錄檔。

ERROR_SETTING_IS_READ_ONLY

診斷

您嘗試設定的備份設定會標示為唯讀且無法設定。

解決方案

伺服器管理員必須手動更新檔案,或使用 Web Deploy 的 PowerShell 腳本,在 applicationHost.config 檔案中將備份設定標示為「可設定」。

ERROR_FILE_IN_USE

診斷

無法覆寫或刪除目的地檔案,因為它目前正在使用中。

解決方案

執行同步處理之前,請確定目的地檔案未在使用中。如果您要使用appHostConfigiisAppcontentPath 或 提供者) ,將內容同步處理至 IIS 7 或更新版本上裝載的網站 (,請考慮在同步處理期間啟appOffline用規則讓應用程式脫機。

您可以 appOffline.pubxml) (發佈配置檔中設定規則。 EnableMSDeployAppOffline將 專案新增至 ,PropertyGroup如下所示:

<PropertyGroup>
  <EnableMSDeployAppOffline>true</EnableMSDeployAppOffline>
</PropertyGroup>

ERROR_FAILED_TO_BRING_APP_ONLINE

診斷

完成同步處理之後,Web Deploy 無法從網站移除 app_offline.htm 檔案。

解決方案

您可以重新執行已啟用規則的 appOffline 同步處理,或從目的地伺服器上的月臺根目錄手動刪除 app_offline.htm 檔案。 如需失敗原因的詳細資訊,請檢查伺服器事件記錄檔。

您可以 appOffline.pubxml) (發佈配置檔中設定規則。 EnableMSDeployAppOffline將 專案新增至 ,PropertyGroup如下所示:

<PropertyGroup>
  <EnableMSDeployAppOffline>true</EnableMSDeployAppOffline>
</PropertyGroup>

ERROR_HIGHER_FXVERSION_REQUIRED

診斷

Web Deploy 無法使用 SQL 專用系統管理員連線 (DAC) 執行同步處理,因為 SQL DAC 需要 .NET 4.0。

解決方案

確定使用 DAC 進行 SQL 連線的伺服器已安裝 .NET 4.0。 如果您使用 msdeploy.exe 客戶端進行連線,請確定其已將 .NET 4.0 列為msdeploy.exe組態檔中的第 個選項。 如果您要連線到 msdepsvc Web Deployment Agent​ 服務) (伺服器端點,請確定它已將 .NET 4.0 列為組態檔中msdepsvc.exe的第一個選項。

ERROR_MAX_NUM_APPLICATIONS_EXCEEDED

診斷

您建立的 Web 應用程式比目標伺服器上允許的還要多。

解決方案

向伺服器管理員要求更多應用程式,或刪除一些現有的應用程式。

ERROR_API_NOT_SUPPORTED

診斷

呼叫的 API 不存在於目標伺服器上,因為伺服器使用舊版的 Web Deploy。

解決方案

在伺服器上安裝最新版的 Web Deploy。

DacFxNeededForSQLProvider,ERROR_SCRIPTDOM_NEEDED_FOR_SQL_PROVIDER,ERROR_SQLCLRTYPES_NEEDED_FOR_SQL_PROVIDER

三個錯誤的群組會共用下列診斷和解決方法:

診斷

未安裝 SQL DAC 及其相依性。

解決方案

使用 Web Platform Installer 安裝:

  • Microsoft SQL Server 2012 Data-Tier Application Framework
  • SQL Server 2012 Transact-SQL ScriptDom
  • SQL Server 系統 CLR 類型 11.0

ERROR_PACKAGE_TOO_LARGE

診斷

所建立的封裝或備份超過 4 GB 的大小上限。

解決方案

改為在 archiveDir 建立套件時使用提供者。 現在,此限制沒有關於自動備份的解決方案。

ERROR_TIMED_OUT

診斷

MySqlDump 回應指定查詢所花費的時間太長。

解決方案

您可以變更 和 提供者設定的WaitAttemptsSettingInfoWaitIntervalSettingInfo值,以變更 Web Deploy 等候 MySqlDump 從查詢傳回的時間長度。

ERROR_ASSEMBLY_NOT_FOUND

診斷

無法載入必要的相依性。

解決方案

如果您透過 MSI 手動安裝 Web Deploy,請嘗試使用 Web Platform Installer 重新安裝 Web Deploy,這有助於為您安裝必要的相依性。

ERROR_SMO_NEEDED_FOR_SQL_PROVIDER、ERROR_USER_NOT_AUTHORIZED_FOR_IISAPP、ERROR_SCRIPTER_NEEDED_FOR_SQLCE_PROVIDER

錯誤碼ERROR_SMO_NEEDED_FOR_SQL_PROVIDER、ERROR_USER_NOT_AUTHORIZED_FOR_IISAPP和ERROR_SCRIPTER_NEEDED_FOR_SQLCE_PROVIDER程式代碼會共用下列診斷和解決方法:

診斷

找不到 SQL 共用管理物件 (SMO) ,或安裝的版本太舊。

解決方案

使用 Web Platform Installer 安裝最新版的 SMO。

ERROR_CANNOT_CONNECT_TO_DATABASE

診斷

發生此錯誤的原因是無法連線到資料庫。

解決方案

確認:

  • 您的 連接字串 正確無誤。
  • 連接字串 中指定的帳戶可以存取資料庫。
  • 您要連線的資料庫伺服器允許遠端連線。
  • 您可以從執行 Web Deploy 的電腦存取資料庫伺服器。 如果您要連線到遠端 Web Deploy 伺服器並指定資料庫,則必須確定遠端 Web Deploy 伺服器可以存取您的資料庫。

ERROR_DACPAC_EXTRACTION_TIMEDOUT

診斷

DAC PAC 動作花費太多時間才完成。

解決方案

藉由指定 CommandTimeout 提供者設定,增加 Web Deploy 等候命令完成的時間量。

ERROR_NOT_SUPPORTED

診斷

在 Web Deploy 發佈作業期間,Azure 網站不支援在伺服器上建立新的虛擬應用程式或修改現有的應用程式組態。

解決方案

您可以建立新的虛擬應用程式,或透過 https://portal.azure.com/ Azure 入口網站 () 修改網站的現有組態設定。 若要這麼做,

  1. 登入入口網站。
  2. 開啟您的網站設定。
  3. 選取 [ 設定] 索引標籤
  4. 在 [ 設定] 索引 標籤中,修改您的月臺,以符合您嘗試部署之應用程式的組態設定。 在大部分情況下,這隻是變更 .NET Framework 版本的問題,但在某些情況下,這也可能需要您新增虛擬應用程式。

ERROR_EXCEPTION_WHILE_CREATING_OBJECT

一般而言,這表示在來源上驗證提供者時發生問題。 例如,如果您嘗試從來源檔案共用同步處理內容,但您沒有檔案共用的存取權,您可能會看到此錯誤碼。 針對這類問題,請確定您可以存取您想要從中發佈的所有源數據。

ERROR_EXECUTING_METHOD

一般錯誤碼,表示發行資料庫時發生問題。 通常與此程式代碼相關聯的堆疊追蹤和訊息應該表示 SQL 管理物件或 SQL Data-Tier Application Framework 擲回的實際錯誤。