如何从脚本备份和恢复IIS配置

如何从脚本备份和恢复IIS配置,iis,scripting,backup,windows-server-2008,restore,Iis,Scripting,Backup,Windows Server 2008,Restore,我正在编写一个脚本,在Windows中设置许多不同的应用程序(主要是svn和用于http、dns、邮件、ftp和db的开源服务器)。该脚本旨在为新开发人员在new/clean Windows工作站中执行,它会自动设置所有内容,以创建与生产环境非常相似的环境。执行后,所有内容都在本地运行,开发人员可以立即开始工作 这不仅有助于新开发人员,而且也有助于所有现有开发人员。每当整个系统发生更改时,所有内容都会在本地复制 我还不能做的一件事是对运行web应用程序的IIS服务器进行某种备份(在Prod服务器

我正在编写一个脚本,在Windows中设置许多不同的应用程序(主要是svn和用于http、dns、邮件、ftp和db的开源服务器)。该脚本旨在为新开发人员在new/clean Windows工作站中执行,它会自动设置所有内容,以创建与生产环境非常相似的环境。执行后,所有内容都在本地运行,开发人员可以立即开始工作

这不仅有助于新开发人员,而且也有助于所有现有开发人员。每当整个系统发生更改时,所有内容都会在本地复制

我还不能做的一件事是对运行web应用程序的IIS服务器进行某种备份(在Prod服务器中),并将其自动恢复到新开发人员的机器上,这样他就不必在本地安装/配置IIS

我读过关于使用appcmd.exe创建和恢复备份的文章,但这只适用于同一台计算机(它使用加密密钥,并且这些密钥在计算机之间更改)

有没有一种方法,一种可编写脚本的方法,可以从一台服务器获取所有与IIS相关的内容,并将其恢复到另一台服务器上,而无需用户干预,并且恢复的IIS运行与原始IIS完全相同

提前谢谢


Francisco

把这个放在这里,这样任何遇到这个问题的人都会理解为什么没有回答这个问题。网站有大量与之相关的变量,这些变量阻止任何简单的方法通过一个或几个cmdlet复制其所有配置

但要开始,您需要非常熟悉applicationHost.config文件以及如何使用访问其中的属性。熟悉如何根据webconfiguration属性编写脚本的一种方法是在IIS中使用配置编辑器。无论何时在配置编辑器中进行更改,在提交更改之前,都会有一个名为“生成脚本”的漂亮链接,该链接将有一个Powershell选项卡,可用于帮助您在applicationHost.config文件中为配置元素收集适当的Get/Set命令

我创建了一个与OP所要查找的内容几乎完全相同的东西,它跨越4个模块(超过20000行代码),并且有一个SQL后端,其中包含所有配置元素

当网站拥有从可能需要注册的底层DLL、IsapiCGI限制和ISAPIPFilters、绑定到应用池的帐户(可能需要添加到服务器上的某些本地组)到需要在服务器上加载证书的安全绑定的所有内容时。你可以看到这不是一个简单的任务。(这些只是网站可能包含的变量的一小部分)


但是,Microsoft为您提供了大量现成的cmdlet,您可以利用这些cmdlet在内部帮助您开发类似的内容。我知道这已经是四年前的事了,但希望任何一个偶然发现这一点的人都会发现上面的内容很有用

哇。风滚草徽章是通过这个问题获得的。我不敢相信没有人能或想回答这样的问题-|