如何在IIS7或IIS7.5中导入导出站点及应用程序池

为实现负载平衡,我们可能会使用多个WEB服务器,也就会需要给多个IIS配置同样的站点和应用程序池.那么我们需要一个一个的重新建吗?当然不用,我们只需要一些简单的命令就可以在IIS7(Windows Server 2008)或IIS7.5(Windows Server 2008 R2)上来导出导入这些配置了.


当我们在IIS7或IIS7.5上创建站点时,IIS会为我们自动创建一个对应该站点的唯一的应用程序池.所以,我们要导入网站信息,就必须先导入应用程序池信息.


在IIS7+上导出所有应用程序池的方法:

%windir%/system32/inetsrv/appcmd list apppool /config /xml > c:/apppools.xml


这个命令会将服务器上全部的应用程序池都导出来,但有些我们是我们不需要的,要将他们删掉.比如:


  • DefaultAppPool

  • Classic .Net AppPool

如果在导入时发现同名的应用程序池已经存在,那么导入就会失败.


导入应用程序池的方法:

%windir%/system32/inetsrv/appcmd add apppool /in < c:/apppools.xml


这样就可以将全部的应用程序池都导入到另一个服务器中了.


导出全部站点的方法:

%windir%/system32/inetsrv/appcmd list site /config /xml > c:/sites.xml


同样,我们需要编辑sites.xml文件删除不需要的站点.如:


  • Default Website



导入站点的方法:

%windir%/system32/inetsrv/appcmd add site /in < c:/sites.xml


至此,导入工作完成了,看看两台服务器的IIS配置一样了吧.


另外,介绍下单独导出导入一个站点的方法


导出单独应用程序池:

%windir%/system32/inetsrv/appcmd list apppool “应用程序池名称” /config /xml > c:/myapppool.xml

黄色字体的就是要导出的应用程序池名称


导入单独应用程序池:

%windir%/system32/inetsrv/appcmd add apppool /in < c:/myapppool.xml


导出单独站点:

%windir%/system32/inetsrv/appcmd list site “站点名称” /config /xml > c:/mywebsite.xml

黄色字体的就是要导出的站点名称


导入单独站点:

%windir%/system32/inetsrv/appcmd add site /in < c:/mywebsite.xml

你可能感兴趣的:(如何在IIS7或IIS7.5中导入导出站点及应用程序池)