2010-09-28 75 views
3

我一直在想如何编写应用程序来将IIS配置部署到多个WebServers。 Web配置将从一个环境获取,然后在一个或多个Web服务器上恢复。我已经尝试从.NET的DirectroyServices API来管理IIS。我想导出所有配置,并将它们导入运行相同版本IIS的另一物理WebServer。已恢复的虚拟目录,但不是所有的参数都被允许。例如带有设置密码的安全属性。远程编程管理IIS 6及更高版本

从我发现环视它看起来像IIS的DirectoryServices API不实现您需要的所有功能。我能够从我的应用程序中剔除AppCMD。我不喜欢的是,我不得不使用远程执行工具,以便远程执行批处理脚本,该脚本负责处理IIS的还原和备份。

有没有更好的方法来做到这一点?我正在研究PowerShell以查看是否可以编写脚本来执行我所需的操作,但是想知道这个脚本是否也适用于IIS 6和IIS 7?

在此先感谢您的任何意见!

+0

您可以扩展您从哪个版本的IIS复制配置?例如'IIS6-> IIS6','IIS6-> IIS7','IIS7-> IIS7' – Kev 2010-09-29 14:03:05

+0

至少它应该将配置从同一个IIS版本复制到相同的IIS版本。如果它将配置复制到不同的IIS版本,则配置该匹配应该更新,并且应该记录任何未更新的配置。 – 2010-09-29 14:26:24

回答

1

部署和迁移是很容易与微软的Web部署:http://www.iis.net/download/WebDeploy

我目前使用此同步Web应用程序文件,IIS IIS6和IIS7箱之间设置和ACL设置。

+0

嗨Markis,谢谢你的回应。我以前看过这个工具。它看起来像一个单独运行的应用程序,用于部署。如果它具有可用于以编程方式访问它的API,那么我可能会使用它。我希望不必在客户端机器上安装此工具,只需引用它所具有的任何程序集。 – 2010-09-30 13:01:06

+0

本身不是一个API,但一切都是通过命令行参数完成的。所以你可以做所有事情,从一个强大的shell脚本。 – Markis 2010-09-30 13:57:44

+0

任何简单的样品? – Kiquenet 2011-02-14 22:22:03