[英]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.