|
|
51CTO旗下网站
|
|
移动端

极简操作!3分钟即可实现的 IIS 站点迁移

为实现负载平衡或者服务器迁移时,我们可能会使用多个Web服务器,也就会需要给多个IIS配置同样的站点和应用程序池。根据需求一个一个重新建吗?当然不用!我们只需要执行一些简单的命令即可在 IIS 上进行这些配置的导出导入。

作者:老王谈运维来源:今日头条|2019-08-15 07:13

为实现负载平衡或者服务器迁移时,我们可能会使用多个 Web 服务器,也就会需要给多个 IIS配置同样的站点和应用程序池。根据需求一个一个重新建吗?当然不用!那得花费多少时间!我们只需要执行一些简单的命令即可在 IIS 上进行这些配置的导出导入~

当我们在 IIS7 或 IIS7.5 上创建站点时,IIS 会为我们自动创建一个对应该站点唯一的应用程序池。所以,我们要导入网站信息,就必须先导入应用程序池信;下面将介绍使用 Windows 自带的 appcmd 命令对 IIS 站点和程序池的配置进行导入和导出实现 IIS 的站点迁移。

注:appcmd命令在C:\Windows\System32\inetsrv目录下,使用appcmd命令时,需要进入该目录,或者将该目录加入到Windows系统环境变量中。

目标服务器IIS环境创建

首先我们需要在目标服务器安装 IIS 环境,并且和原服务器的 IIS 环境一致;下面以此环境为例,迁移其中的 www 和 App 站点。

IIS应用程序池和站点导出

1. 导出IIS应用程序池配置(指定程序池或者所有程序池)

在Windows的DOS窗口执行以下命令进行IIS应用程序池导出

  1. %windir%\system32\inetsrv\appcmd list apppool /config /xml > c:\allpools.xml 

其中c:\allpools.xml为导出的IIS程序池配置文件,路径可以按需要更改;导出后,可以在指定的目录中看到该配置文件。

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

可以使用文件编辑器打开导出的IIS应用程序池配置文件allpools.xml,将其删除掉。

找到对应的DefaultAppPool程序池配置进行删除,以开头,对应该段结尾的内容。

导出单个IIS应用程序池%windir%\system32\inetsrv\appcmd list apppool "www" /config /xml > c:\wwwpool.xml

2. 导出IIS站点配置(指定站点或者站点)

导出所有IIS站点

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

极简操作!3分钟即可实现的 IIS 站点迁移

极简操作!3分钟即可实现的 IIS 站点迁移

同样,导出全部站点后,其中也可能会有我们不需要的站点,我们在导出的sites.xml中将其配置删除掉:Default Web Site

极简操作!3分钟即可实现的 IIS 站点迁移

找到对应的Default Web Site站点配置进行删除,以开头,对应该段结尾的内容。

导出单个IIS站点

  1. %windir%\system32\inetsrv\appcmd list site "www" /config /xml > c:\wwwwebsite.xml 

极简操作!3分钟即可实现的 IIS 站点迁移

IIS应用程序池和站点导入

目标服务器当前只有Default Web Site的默认站点

极简操作!3分钟即可实现的 IIS 站点迁移

1. 导入IIS应用程序池配置

先将上一步导出的IIS应用程序池和站点的配置文件拷贝至目标服务器中。

执行以下命令进行IIS应用程序池导入

  1. %windir%\system32\inetsrv\appcmd add apppool /in < c:\allpools.xml 

此处c:\allpools.xml路径改为拷贝至目标服务器上的路径

如果上面导出的配置文件中未删除DefaultAppPool,目标服务器中又有该程序池,导入就会报错。

极简操作!3分钟即可实现的 IIS 站点迁移

删除对应重复的程序池配置文件即可,或者将目标服务器上的重复应用程序池删除在进行导入,站点配置导入是也是如此。

极简操作!3分钟即可实现的 IIS 站点迁移

这时 www 和 App 站点的应用程序池已经成功导入至目标服务器的 IIS 中。

极简操作!3分钟即可实现的 IIS 站点迁移

导入单个IIS应用程序池配置

  1. %windir%\system32\inetsrv\appcmd list apppool "www" /config /xml > c:\wwwpool.xml 

2. 导入IIS站点配置

导入IIS站点配置

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

极简操作!3分钟即可实现的 IIS 站点迁移

时代下,一名优秀的运维,不仅需要英勇走在运维事故最前线,有化险为夷的能力;也需要我们做好业务实时监控,实现防患于未然的能力。

【编辑推荐】

  1. 华为Tecal V2系列服务器刷新31项SPEC测试世界纪录
  2. 通过routeros设置双ADSL负载平衡脚本
  3. 如何在 ASP.NET 4.6 与 IIS10 中运用 HTTP/2 ?
  4. 华为分享SDN创新实践 发布Cloud Fabric 5.0解决方案
  5. 影响SDN和NFV部署速度的两个因素
【责任编辑:赵宁宁 TEL:(010)68476606】

点赞 0
大家都在看
猜你喜欢

订阅专栏+更多

这就是5G

这就是5G

5G那些事儿
共15章 | armmay

99人订阅学习

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

363人订阅学习

20个局域网建设改造案例

20个局域网建设改造案例

网络搭建技巧
共20章 | 捷哥CCIE

746人订阅学习

视频课程+更多

小白轻松学MySQL调优

小白轻松学MySQL调优

讲师:齐毅14328人学习过

OCP培训 Oracle 12c/18c/19c OCP认证实战培训【低价送OCP考证】

OCP培训 Oracle 12c/18c/19c OCP认证实战培训

讲师:风哥4179人学习过

小白轻松学Redis 4.x NoSQL数据库

小白轻松学Redis 4.x NoSQL数据库

讲师:齐毅35964人学习过

读 书 +更多

Linux安全体系分析与编程

本书选择经典的开放源代码,全面系统地分析了Linux安全机制。本书共有17章,前10章着重介绍了Linux的安全机制及实现方法,阐述了公...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微