IIS6.0有个导出配置的功能,但你却找不到界面上的直接导入配置功能,需要用到操作系统自带的iiscnfg.vbs脚本。
1、导出当前的IIS网站配置
打开Internet信息服务(IIS)
--->右键“网站”
--->“所有任务”
--->弹出的保存窗口,填写文件名和路径,将IIS的配置保存一份。
然后,将这份备份,上传到另一台服务器上,比如我放在迁移服务器的d:\iisbak.xml
下面开始在迁移服务器上做还原操作了:
2、导入配置文件
“开始”---“运行”---输入“cmd”,打开命令窗口,用下面的命令,控制切换到 windows\system32 目录
cd C:\windows\system32
那么,现在就可以输入命令还原了,
iiscnfg /import /f d:\iisbak.xml /sp /LM/W3SVC /dp /LM/W3SVC /children
解释:
/import /f 导入配置文件,后跟保存的.xml配置文件
/sp 指定.xml中要导入的源路径,必选项
/dp 指定要导入到网站的目标路径,必选项, /LM/W3SVC/1是指当前在IIS管理器中看到的第1个WEB站点
/children 将.xml中的配置的子虚拟目录配置一并导入
这个命令,就可以把旧服务器上的IIS所有配置还原到新的IIS配置了
说明:/LM/W3SVC 这个是在你的备份里面有的,注意的是,如果你的新服务器,原来有了一些网站的话,就要用到合并了,上面的命令加多一个“/merge”,如下
iiscnfg /import /f d:\iisbak.xml /sp /LM/W3SVC /dp /LM/W3SVC /children /merge
如果服务器IP、网站独立运行用户有变可对iisbak.xml文件进行修改,批量替换,以上几步就可以轻松对IIS跨服务器迁移。
附:
iisweb.vbs批量删除IIS站点
注意:以下操作都要以管理员身份登录或是以管理员身份运行
1、获取站点列表
cscript.exe C:\windows\system32\iisweb.vbs /query > D:\sitelist_org.txt
D:\sitelist_org.txt内容类似
Microsoft (R) Windows Script Host Version 5.6
版权所有(C) Microsoft Corporation 1996-2001。保留所有权利。
正在连接到服务器 ...已完成。
Site Name (Metabase Path) Status IP Port Host
==========================================================================
默认网站 (W3SVC/1) STOPPED ALL 80 N/A
abc.com (W3SVC/10) STARTED 1.2.3.4 80 abc.com
80 www.abc.com
...
使用editplus或其他编辑器的替换功能将站点列表提取为每行一个站点保存到D:\sitelist.txt
D:\sitelist.txt内容应该类似
abc.com
bcd.com
...
2、批量删除IIS站点
写一个批处理文件为D:\delallsite.bat
内容为:
for /f %%i in (D:\sitelist.txt) do cscript.exe C:\windows\system32\iisweb.vbs /delete %%i
运行D:\delallsite.bat
出现
Microsoft (R) Windows Script Host Version 5.6
版权所有(C) Microsoft Corporation 1996-2001。保留所有权利。
正在连接到服务器 ...已完成。
Server W3SVC/10 has been deleted
表示站点成功删除了。
3、如果出现
执行删除操作出现
Microsoft (R) Windows Script Host Version 5.6
版权所有(C) Microsoft Corporation 1996-2001。保留所有权利。
Not enough parameters.
Type IIsWeb /create /? For Help
就表示权限有问题,执行
regsvr32 C:\WINDOWS\System32\wshom.ocx
使用完之后再
regsvr32 /u C:\WINDOWS\System32\wshom.ocx 注消
批量修改网站路径
C:\WINDOWS\system32\inetsrv目录下有一个文件MetaBase.xml,
打开文件查找,果然找到了IIS上面所有站点的路径。好的,批量替换,保存,提示:
停止IIS服务"iisreset/STOP" 停止IIS,替换,保存,成功!开启IIS服务 "iisreset/start",OK 大功告成