使用MSDeploy从IIS 6迁移到IIS 7.5时忽略应用程序池

时间:2012-09-27 14:35:26

标签: iis migration msdeploy application-pool

我目前正将我的网站从带有IIS 6的Windows Server 2003( SourceServer )迁移到带有IIS 7.5的Windows Server 2008 R2( DestServer )。

我使用 MSDeploy 工具执行操作。检查依赖关系(仅 Windows身份验证,已安装在 DestServer 中)后,我在 SourceServer 中创建了包:

  

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

我将其复制到 DestServer 中。从 DestServer 我使用以下方法测试部署:

  

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

但它给了我一个与缺少应用程序池相关的错误。事实上,我的目标之一是推动网站的发展,因为在 SourceServer 中,负责部署的人员对命名约定(池和站点)都造成了很大的混乱,分配了太多的应用程序(甚至10个)在单个应用程序池中等等。

因此,我的目标是在 DestServer 中的专用全新应用程序池中运行该站点。但是,如果MSDeploy在 DestServer 中找不到具有相同名称 SourceServer 的应用程序池,则它不会在 DestServer 上部署该程序包

我还尝试在MSDeploy中使用命令-enableLink: AppPoolExtension来创建和部署包以获取应用程序池。然后包正确安装,但我不知道为什么,它会在配置文件中出错。例如,我无法启用任何类型的身份验证模块。

有没有办法让MSDeploy在部署时忽略应用程序池?

1 个答案:

答案 0 :(得分:0)

msdeploy -verb:sync 
         -source:metakey=lm/w3svc/1,computerName=original,encryptPassword="pwd",includeAcls=true 
         -disableLink:ContentExtension 
         -dest:package=original.zip,encryptPassword="pwd" 
         -enableLink:AppPool 
         -skip:WebApplication="^.*$"  >original.log