簡體   English   中英

從IIS7到IIS6的MSDeploy

[英]MSDeploy from IIS7 to IIS6

我正在嘗試使用以下命令進行MSDeploy:

"C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\\msdeploy.exe" -source:package='package.zip' -dest:auto,computerName='servername',includeAcls='False' -verb:sync -disableLink:AppPoolExtension -disableLink:ContentExtension -disableLink:CertificateExtension -setParamFile:"package.SetParameters.xml" 

它將被部署到的服務器是運行IIS 6的Win2003服務器。當我從WinXP Hudson CI從屬設備運行此命令時,它運行正常。 但是,在新的Win7從站上運行此命令會給我以下錯誤:

Error: (12/21/2014 12:59:17 AM) An error occurred when the request was processed on the remote computer.
Error: The metabase key '/LM/W3SVC' could not be found.
Error: The type initializer for 'Microsoft.Web.Deployment.AxNative' threw an exception. ---> System.IO.IOException: The specified module could not be found. (Exception from HRESULT: 0x8007007E)
   --- End of inner exception stack trace --- 
   at Microsoft.Web.Deployment.AxNative.MetabaseGetBaseObject(String serverName, String userName, String password, IAppHostWritableAdminManager manager, Object& objectHandle)
   at Microsoft.Web.Deployment.MetaKeyCommitItem..ctor(DeploymentBaseContext baseContext, Boolean useInternalAbo, Boolean isReadOnly)
   at Microsoft.Web.Deployment.MetaKeyCommitItem.GetInstance(DeploymentBaseContext baseContext, Boolean useInternalAbo, Boolean isReadOnly)
   at Microsoft.Web.Deployment.MetaKeyProvider.get_CommitItem()
   at Microsoft.Web.Deployment.MetaKeyProvider.DoesNodeExist(Exception& e)
Error: The library 'C:\Program Files\IIS\Microsoft Web Deploy\x86\axnative.dll' could not be loaded.
Error: The specified module could not be found. (Exception from HRESULT: 0x8007007E)
Error count: 1.

有任何想法嗎? 請讓我知道是否需要更多信息。

錯誤:“找不到配置數據庫密鑰'/ LM / W3SVC'。” 聽起來好像在Windows 7(iis7)目標上使用了錯誤的提供程序,因為IIS7不再使用元數據庫。 IIS7及更高版本使用配置模型。

這是有關如何將站點從IIS6遷移到IIS7的鏈接,其中顯示了一個使用包從IIS6服務器並將其導入IIS7服務器的示例。

我在您的示例中看到的唯一區別是,它們在目標上指定了metakey提供程序,而您使用的是“自動”。 “自動”可能適用於IIS6到IIS6,但也許您需要指定metaKey提供程序(用於IIS6站點或IIS6到IIS7遷移)作為目標提供程序。

創建包示例

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

部署到IIS7目標示例

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

如果您要進行從IIS7到IIS7的遷移,則想改用AppHostConfig提供程序。 但是metakKey提供程序是Microsoft為IIS6到IIS6或IIS6到IIS7指定的。

問題在於運行IIS6的目標win2003服務器上的MS Deploy安裝(應該將HKLM \\ SOFTWARE \\ Microsoft \\ IIS Extensions \\ Web Deploy的Web部署2.0文件夾為“ 2”,而文件夾為“ 1”)。

我剛剛修復(重新安裝了)MS Deploy 2.0,它解決了該問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM