【问题标题】:Ignore application pool when migrating from IIS 6 to IIS 7.5 with MSDeploy使用 MSDeploy 从 IIS 6 迁移到 IIS 7.5 时忽略应用程序池
【发布时间】:2012-09-19 09:13:07
【问题描述】:

我目前正在将我的网站从带有 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在部署时忽略应用程序池?

【问题讨论】:

  • 如果您保留应用程序池,您会收到什么错误?你读过the IIS.net guide on migrating sites from IIS 6 to 7吗?
  • 谢谢。错误是:“错误:AppPoolNotFound 依赖项检查发现源数据正在使用 AppPool 'myPool',但未在源数据或目标计算机上定义。引用此应用程序池的应用程序将存在配置问题。”我按照该指南迁移网站
  • 当您包含enableLink:AppPoolExtension 时会怎样?那你收到什么错误?
  • 由于源服务器和目标服务器的框架版本不同,我的web.config有一些错误。

标签: iis migration msdeploy application-pool


【解决方案1】:
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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-01
    • 2011-02-05
    • 2011-07-26
    • 2014-04-14
    • 1970-01-01
    • 2012-05-19
    • 1970-01-01
    相关资源
    最近更新 更多