Iiscnfg.vbs脚本-IIS配置脚本使用介绍

发布时间:2020-02-03编辑:脚本学堂
本文介绍了Iiscnfg.vbs脚本的用法,Iiscnfg.vbs是iis配置脚本,导入和导出本地或远程计算机上 Internet 信息服务 (IIS) 配置数据库的所有或选定元素,或者将整个 IIS 配置(配置数据库和架构)复制到另一台计算机以复制配置。
Iiscnfg.vbs脚本-IIS配置脚本使用介绍 第三部分
2)、将日志记录配置导入到远程计算机
下列过程将 C:IISLogging.xml 中的自定义日志记录配置导入到远程计算机的 IIS 配置数据库中。可使用该方法或该方法的扩展将配置传播到一组服务器。
将日志记录配置导入到远程计算机的步骤分为两步:
1,将源文件复制到远程计算机。(Iiscnfg.vbs 不允许 /f 参数中有远程路径。)
2,将配置导入到 IIS。
第一个命令将 Iislogging.xml 文件复制到远程服务器 Svr126:
 

复制代码 代码示例:
copy IISLogging.xml Svr126c$

第二个命令将 Iislogging.xml 导入到 Svr126 的 IIS 配置中。它使用 /f 参数来标识源文件,使用 /sp 参数来指定要导入的 /LM/Logging/Custom Logging 配置数据库路径,使用 /dp 参数来将导入密钥放在目标配置的同一位置 /LM/Logging/Custom Logging。(使用引号括起包含空格的路径元素。) 它使用 /children 参数来导入日志记录密钥的所有子密钥。
为了在 Svr126 上操作,它使用 /s 参数指定远程计算机,使用 /u 和 /p 参数运行具有远程计算机上的用户管理员帐户权限的脚本。
 

复制代码 代码示例:
iiscnfg /import /f C:IISLogging.xml /sp "/lm/logging/custom logging" /dp "/lm/logging/custom logging" /children /s Svr126 /u Svr126Administrator /p p@ssword1#
 

作为响应,Iiscnfg.vbs 显示以下成功消息:

正在连接到服务器...已完成。 Configuration imported from /lm/logging/custom logging in file C:IISLogging.xml to  /lm/logging/custom logging in the Metabase. [喝小酒的网摘]http://blog.const.net.cn/a/615.htm结果,/LM/Logging/Custom Logging 密钥及其子密钥从本地配置数据库复制到 Svr126 的配置数据库中。

3)、将虚拟目录与网站合并
此示例通过将标准的 import 操作与使用 /merge 参数的 import 操作进行比较,阐明了 /merge 参数的工作原理。
两个命令都使用同一导入文件 Invest_vdir.xml 来更新网站的 Investments 虚拟目录的属性。

下面的示例显示在运行任何 import 操作之前 Investments 配置数据库密钥的情况。(此示例是从使用 Iisback.vbs 创建的配置数据库的备份副本中获得的)。
4)、导入前的配置数据库
 

复制代码 代码示例:
 <IIsWebVirtualDir Location ="/LM/W3SVC/1509060625/root/Investments"  AccessFlags="AccessRead | AccessScript"  AppFriendlyName="Investments"  AppIsolated="2"  AppRoot="/LM/W3SVC/1509060625/Root/Investments"  DirBrowseFlags="DirBrowseShowDate | DirBrowseShowTime | DirBrowseShowSize | DirBrowseShowExtension | DirBrowseShowLongDate | EnableDefaultDoc"  Path="E:publicDownload" > </IIsWebVirtualDir>

下面的示例显示了将在 import 操作中使用的 Invest_vdir.xml 文件的内容。(此示例通过导出 Investments 配置数据库密钥然后编辑导出文件来创建。)

注意 Investments 密钥的下列属性在 XML 文件中已发生更改:
AccessFlags 属性的值已更改。
添加了 AuthFlags 属性。
省略了 DirBrowseFlags 属性。

5)、导入文件内容
 

复制代码 代码示例:
 <IIsWebVirtualDir Location ="/LM/W3SVC/1509060625/root/Investments"   AccessFlags="AccessRead"   AuthFlags="AuthAnonymous | AuthNTLM"   AppFriendlyName="Investments"   AppIsolated="2"   AppRoot="/LM/W3SVC/1509060625/Root/Investments"   Path="E:publicDownload" > </IIsWebVirtualDir>

 命令 1:标准导入
下列命令在不使用 /merge 参数的情况下将 Invest_vdir.xml 文件导入到配置数据库。该命令指示 IIS 使用 XML 文件中 Investments 的密钥来替换配置数据库中的 Investments 密钥。
该命令使用 /f 参数来指定导入文件,并使用源路径 (/sp) 和目标路径 (/dp) 参数中的同一配置数据库路径。
iiscnfg /import /f e:iistestInvest_vdir.xml /sp /LM/W3SVC/1509060625/root/Investments /dp /LM/W3SVC/1509060625/root/Investments
使用此命令后,配置数据库中的 Investments 密钥将与 Invest_vdir.xml 导入文件中的 Investments 密钥相同。(www.jb200.com 脚本学堂)
命令 2:导入和合并
下列命令将 Invest_vdir.xml 文件中的 Investments 密钥合并到配置数据库。/merge 参数将指示 IIS 将新的属性从导入文件添加到配置数据库、使不在导入文件中的配置数据库属性保持不变,而且当属性同时出现在导入文件和配置数据库中时应用导入文件值。
该命令除了添加了 /merge 参数外,其他都与命令 1 相同。
 

复制代码 代码示例:
iiscnfg /import /f e:iistestInvest_vdir.xml /sp /LM/W3SVC/1509060625/root/Investments /dp /LM/W3SVC/1509060625/root/Investments /merge
 

使用该命令后,配置数据库中的 Investments 密钥的内容是其源的组合,如下例所示。
请注意配置数据库中的 Investments 密钥的下列属性已发生更改:
1,在配置数据库和 XML 文件中显示的 AccessFlags 属性的值已更改。XML 文件中的值现在出现在配置数据库中。
2,已添加仅在 XML 文件中显示的 AuthFlags 属性。
3,仅在配置数据库中显示的 DirBrowseFlags 属性没有更改。
 

复制代码 代码示例:
 <IIsWebVirtualDir Location ="/LM/W3SVC/1509060625/root/Investments"   AccessFlags="AccessRead"   AppFriendlyName="Investments"   AppIsolated="2"   AppRoot="/LM/W3SVC/1509060625/Root/Investments"   AuthFlags="AuthAnonymous | AuthNTLM"   DirBrowseFlags="DirBrowseShowDate | DirBrowseShowTime | DirBrowseShowSize | DirBrowseShowExtension | DirBrowseShowLongDate | EnableDefaultDoc"   Path="E:publicDownload" > </IIsWebVirtualDir> iiscnfg /copy
 

将 IIS 配置数据库和架构从一台计算机复制到另一台计算机。

语法
iiscnfg[.vbs] /copy /ts TargetComputer /tu TargetUser /tp TargetPassword [/s Computer [/u [Domain]User [/p Password]]]

参数
/ts TargetComputer
必需。将 IIS 配置数据库复制到指定的计算机。键入 IP 地址或计算机名(不带反斜杠)。
/tu TargetUser
必需。指定用于连接到目标计算机的帐户。以 [Domain]User 格式键入用户帐户。该帐户必须是目标计算机上 Administrators 组的成员。
此参数是必需的,即使本地计算机的当前用户是目标计算机的管理员。
/tp TargetPassword
必需。指定 /tu 参数所指定的帐户的密码。
/s Computer
将指定的远程计算机上的 IIS 配置数据库复制到目标计算机。该参数将运行远程计算机上的脚本。键入远程计算机名称或 IP 地址(不带反斜杠)。该默认值是本地计算机。
/u [Domain]User
使用特定用户帐户的权限运行脚本。默认值为本地计算机上的当前用户。如果当前用户不是远程计算机的管理员,则必须使用该参数。
/p Password
指定在 /u 参数中指定的用户帐户的密码。如果忽略该参数,IISCnfg 将提示您输入密码并隐藏键入的文本。
/?
在命令提示符下显示帮助。
注释
1),要执行该过程,您必须是本地计算机 Administrators 组的成员,或者您必须被委派适当的权限。如果将计算机加入域,Domain Admins 组的成员可能也可以执行这个过程。作为安全性的最佳操作,可以考虑使用运行方式来执行这个过程。
2),默认情况下,IISCnfg 将本地计算机的配置数据库复制到 /ts 参数所指定的目标计算机中。不过,可使用 /s 参数来将另一台计算机的配置数据库复制到目标计算机。
3),复制操作使用 IISBack.vbs 来创建源配置数据库和架构的备份副本。然后它将该备份副本文件(.MDX 和 .SCX)复制到目标计算机,通过 IISBack.vbs 使用该备份副本来替换目标计算机的配置数据库和架构。尽管可手动完成这些操作,IISCnfg 复制操作将提供比较方便的一步方法来复制 IIS 配置。
4),该复制操作不复制与 IIS 配置相关的服务器内容,如网页和 FTP 文件。
5),复制操作将更改配置数据库中计算机特定和系统特定的属性,以便这些属性在目标计算机中有效。不过,它不调整目录或文件路径。这样该配置中的路径可能在目标计算机中无效。
示例
下面的示例显示了如何在特定的情况下使用 iiscnfg /copy。

1、复制本地计算机的 IIS 配置
下列命令将本地计算机的 IIS 配置复制到 SVR01 服务器。该命令使用 /ts 参数来标识目标服务器,使用 /tu 和 tp 参数来提供用户在 SVR01 服务器上的管理员帐户和密码。
iiscnfg /copy /ts SVR01 /tu SVR01Admin06 /tp P@ssWord6
作为响应,Iiscnfg.vbs 显示以下成功消息。
 Backing up server 127.0.0.1 Backup complete. IP 地址 127.0.0.1 是环回地址,一般情况下指本地计算机。只有当复制本地计算机的配置时才使用该地址。