$7.49 .com domain with free InstantPage Website Builder$1.99 Web Hosting   捷飞网络官方淘宝店   Godaddy 优惠码
返回列表 发帖
分享到:




[应用&技术] Windows 服务器IIS还原、备份xml网站配置文件

今天,公司vps需要重装系统,将C盘格式化。由于vps上有70多个网站,所以备份了一下。' t% G$ Z( X/ T; z
  备份步骤:打开IIS -> 右键网站 -> 将配置保存到一个文件 -> 选择路径确定(无加密)。5 e, g* X. _  ^
  在机子重装后使用DOS命令进行还原。(因为IIS6上没有方便步骤)。网上有个IIS备份还原的工具叫IISBackup,但是我觉的不好用,所以不如用DOS命令。闲话少说,以下是方法。6 Z1 N* V5 s& r) y
  1.首先打开你保存的文件,查看下XML结构中的IIsWebService标签8 x" O( Y% i; Q9 U1 x+ Q( y
; Y, P0 C8 D8 z
  1. <?xml version ="1.0"?>
  2. <configuration xmlns="urn:microsoft-catalog:XML_Metabase_V64_0">
  3. <MBProperty>
  4. <IIS_Global    Location ="."
  5.         SessionKey="496353625000000034000000100000000b020000016800000168000081e2da380f08d7a77a0f7a8d1e5733151278c173cff44170288404a94b90c90501f8ddb5b80a9b9ba9223fbf4e07334a6eeb1f076e1aad0f806b5bb5"
  6.     >
  7. </IIS_Global>
  8. <IIsWebService    Location ="/LM/W3SVC"
  9.         AllowKeepAlive="TRUE"
  10.     ........................
复制代码

  T" r, A: I3 X5 R0 k. ~8 l* a# X+ S2 z* A. h4 q: d0 s
看下IIsWebService中的 Location ="/LM/W3SVC" 路径,一会需要使用
; k$ b4 W; T9 {; F, n2 N, z  
* H5 n% V- k4 z7 [8 m  2.使用Win+R打开运行框,输入cmd进入DOS界面
8 c7 v: t7 g4 }6 L
. _4 `3 Y! s0 y1 Q6 z
5 y7 [- [$ G7 {2 s+ i* W; B/ @  3.键入 cd c:\Windows\System32  改变路径
6 U8 ?& k- o# Q1 {4 r6 W9 z) Z: e' p, x( A- [9 j% G/ L
! c# Q& P7 b  B& [4 F% ~! r9 J& j  ?
  4.在上面路径下键入5 T" ~$ t# A9 I: D& A
      iiscnfg /import /f c:\IISBak.xml /sp /LM/W3SVC/1 /dp /LM/W3SVC /children /merge
' O/ p$ R) b% J. [0 [/ T
/ j- D% m" I8 B; O0 G( I) C: b' y% v& _" T- r
  其中c:\IISBak.xml为保存的配置文件路径
$ J; C! ^5 i6 t  a5 u. U6 d( V* e  而 /LM/W3SVC就是你的IIsWebService中的Local值.0 Y! ]5 [- E1 ^! ]" w
+ Y" f" |& s/ x

1 u, f% r6 C7 ]9 l* h  这样所有步骤就完成了。
) a5 Z+ C5 Y" {: }0 h: ?- w! w1 n5 \' ]5 Z4 k0 x$ H* o! r* T

* ?% N& o- @8 C3 ~! f) b/ J- w更详细的请看微软官方说明:
- b. l. N1 j  c6 q0 A6 Bhttp://technet.microsoft.com/zh-cn/library/cc738365(v=ws.10).aspx4 s& E8 S! t; X. @9 B% t% E

- B) f8 Z. O" b' I) R6 U: j- q5 l使用 Iiscnfg.vbs 导入 IIS 配置此主题尚未评级 - 评价此主题
. X9 K7 m/ X1 |8 e8 ]/ F$ S
# z! V/ @2 I$ k! [" v2 ?5 P; H- Q更新时间: 2005年8月& D  n3 V/ n+ r' U
应用到: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP16 ^8 s% _' h  S! j2 G+ e% `
可使用命令行脚本 iiscnfg.vbs(存储在 systemroot\System32 中)将配置设置从可扩展标记语言 (XML) 配置数据库导出文件添加到 IIS 服务器的配置数据库中。( G1 ?2 B' v0 D7 j0 }6 e) s& t
发出该命令的计算机必须运行 Microsoft Windows XP 或 Windows Server 2003 家族的成员。该命令所影响的计算机必须运行带有 IIS 6.0 的 Windows Server 2003 家族的成员。 8 w" Z0 G& t$ s3 F! j" J8 A重要事项 5 P0 @+ D* q! A' j
只有本地计算机上 Administrators 组的成员才能运行脚本和可执行文件。作为安全性最佳操作,请使用不属于 Administrators 组的帐户登录计算机,然后使用 runas 命令以管理员身份运行脚本和可执行文件。在命令提示符下,键入 runas /profile /User:MyComputer\Administrator cmd,使用管理员权限打开一个命令窗口,然后键入 cscript.exeScriptName(包括脚本的完整路径和任何参数)。   t. N) x1 J% M* F4 K

& L& o) Y+ g' m% c. u9 w
9 M$ R$ w% X* H5 {/ b' U2 P2 _; O+ J" `: R: r1 s
& B8 l! w  F0 f/ F8 D2 W3 H
本主题包括下列信息:
  • 概述:理解复制过程中的重要概念。
  • 语法:键入命令时必须采用的顺序以及它后面的任何参数和选项。
  • 参数:赋予命令中变量的值。
  • 示例:示例代码和对结果的说明。
概述- U- d+ e" M& V- h# ^
IIS 服务器的配置数据库包括系统特定的属性和计算机特定的属性。如果未经修改,不要将一个 IIS 服务器的配置导出到另一个 IIS 服务器。相反,使用 使用 Iisback.vbs 备份 IIS 配置使用 Iiscnfg.vbs 导入 IIS 配置/copy 操作,二者均替换系统特定的属性和计算机特定的属性,使得配置在目标计算机上有效。
+ h$ I1 Q& c) |! B通过使用 iiscnfg.vbs 进行的更改直接生效,但是在更新 MetaBase.xml 文件之前(更新间隔为 5 分钟或 50 次更改),它们不在该文件中反映出来。使用 iiscnfg /save 立即查看所做更改。
( ]. [9 `. S$ d- g& J5 E4 a5 O# N语法9 S( y& W+ |1 x& I- J5 e
iiscnfg /import /f [Path\]FileName.xml /sp SourcePath /dp DestiniationPath[ /d EncryptingPassword] [ /inherited ] [ /children ] [ /merge ][ /s Computer [ /u [Domain\]User [ /p Password]]]
1 g; e' h( S$ d9 a9 K6 u参数4 m5 n8 k& N- I. P
/f [Path\]FileName.xml 8 P+ g( p3 f& i
必需的。指定 XML 源文件的路径和文件名。
- R3 D$ ]% p0 P6 w: m% p/sp SourcePath ; F: ^4 ^, \4 Y% y' E
必需的。指定导入项在 XML 文件中的位置。按照在 XML 文件中的显示输入配置数据库路径。要导入源文件中的所有项,请输入根目录项的配置数据库路径。
$ z* }, R* m' r" _7 b/dp DestinationPath 6 C0 ]( M/ i* v; u
必需的。指定要将项放入其中的配置数据库路径。按照在 XML 文件中的显示输入配置数据库路径。 ' J3 r% f9 M3 W- ^备注 ' @3 z5 w* J9 `3 O
导入的项在配置数据库路径中的其新位置上必须是所需的类型。如果项类型不是预期类型,则配置将无法正确运行。例如,不要将事件日志配置 (/LM/Logging) 导入到网站配置路径(如 /LM/W3SVC/3)。如果指定的路径在配置数据库中已存在,将不发出警告就用导入项覆盖并替换该配置数据库路径中当前存在的项。 2 u8 ^3 s9 V1 B
' l3 h1 H0 i4 o& j
% x' u( k. T. b: p) g
) R( H( h% h1 \1 V3 t# j, B, J9 R% {
/d EncryptingPassword 0 w& s4 y2 `/ Q8 H' Z& L
只有加密配置文件时才需要。指定用于加密配置数据的密码。1 g& \' w6 i3 K: {0 u( O! ~
/inherited 8 `: G- @( S! V& d
导入项的继承属性。只有当源文件包括继承属性时,该参数才有效。
  w) k: p4 n8 i$ B8 ^0 G+ i8 t/children
" n1 |- V0 _6 U  j5 V" _递归导入指定项的子项。
6 P+ v3 V3 {' f# D/merge
; P& L! W  s8 R8 n将 XML 文件中的项与现有的配置数据库项合并。如果没有该参数,XML 文件中的项将替换同一个配置数据库路径中的现有项。/merge 参数将只出现在 XML 文件中的项添加到配置数据库中,保留配置数据库中不在 XML 文件中存在的项,当项同时出现在 XML 文件和配置数据库中时,则应用 XML 文件中的值。
* ]  |& v) C7 i2 l. \/s Computer 3 ]5 X9 t  x! n) h3 ?
在指定的远程计算机上运行脚本。键入不带反斜杠的计算机名或 IP 地址。默认为本地计算机。3 I# V  q$ `8 f4 y: f4 \
/u [Domain\]User
3 r! Y- Q8 \* U, ]2 O) u使用指定的用户帐户的权限运行脚本。该帐户必须是远程计算机上 Administrators 组的成员。在默认情况下,脚本使用本地计算机当前用户的权限运行。: V6 J7 u- ^0 [* K0 `3 W
/p Password . v7 \# r. K5 k0 E) L, p4 k8 O, Y
指定在 /u 参数中指定的用户帐户的密码。如果您忽略该参数,则脚本会提示您输入密码并不显示所键入的文本。. h4 i# o0 U+ Z. a+ K
示例示例 1:
7 W' b( a: ?0 f/ l4 t# ^下面的命令将网站 NewSite 的配置从文件 C:\Config.xml 导入到配置数据库中。该命令使用 /f 参数指定源文件的名称和位置。然后,它使用 /sp 参数指出配置位于文件 Config.xml 中的 /lm/w3svc/5/Root/NewSite 路径中。最后,它使用 /dp 参数指定应该将项放在配置数据库中的 /lm/w3svc/1/Root/401KApp 位置中。( q7 B5 |5 ]' r+ n! h; K  p
iiscnfg.vbs /import /f c:\config.xml /sp /lm/w3svc/5/Root/NewSite /dp /lm/w3svc/1/Root/401KApp $ F) h# j4 ]$ M8 K# P2 S3 R, \
作为响应,iiscnfg 显示以下成功消息:
3 W! @; V: e$ z" X7 l/ ?* c4 [0 v: sConfiguration imported from /lm/w3svc/5/Root/NewSite in c:\config.xml to /lm/w3svc/1/Root/401KApp in the Metabase.
5 F) P8 e% u7 j3 x9 m, @' f作为该命令的结果,NewSite 的配置现在作为第一个网站出现在 IIS 中,其配置数据库路径为 W3SVC/1。  L5 x6 }$ B7 Y1 V) R, f& V
示例 2:
: R2 a5 U" U! i( ~下面的示例分两步,它将自定义的日志配置从 C:\IISLogging.xml 导入到远程计算机的 IIS 配置数据库中。会使用该方法或者该方法的扩展将配置传播到一组服务器中。
: ^( y0 ?2 z) F* c6 f第一个命令将 IIsLogging.xml 文件复制到远程服务器 Svr126 中。
3 x5 _4 @1 ^' N4 _- E* ]8 e8 L& ecopy IIsLogging.xml \\Svr126\c$
$ S; f; K& f0 r7 \第二个命令将 IIsLogging.xml 导入到 Svr126 的 IIS 配置中。它使用 /f 参数来标识源文件,使用 /sp 参数来指定要导入的 /LM/Logging/Custom Logging 配置数据库路径,使用 /dp 参数将导入的项放在目标配置的同一位置 /LM/Logging/Custom Logging。(使用引号将包括空格的路径元素引起来。)然后,它使用 /children 参数导入 Logging 项的所有子项。最后,为了对 Svr126 进行操作,它使用 /s 参数指定服务器,使用 /u/p 参数用远程计算机上用户的管理员帐户权限运行脚本。
7 c8 b7 b. f0 J4 b( Aiiscnfg /import /f C:\IISLogging.xml /sp "/lm/logging/custom logging" /dp "/lm/logging/custom logging" /children /s Svr126 /u Svr126\Administrator /p p@ssword1#
! H1 b! e; c6 i. }作为响应,iiscnfg 显示以下成功消息:3 ]) ^1 K/ E. L
Connecting to server ... Done.
" ~$ v  b2 W0 c8 s# D5 B6 D' {Configuration imported from /lm/logging/custom logging in file C:\IISLogging.xml to 7 {7 x% p2 C: U4 [9 i
/lm/logging/custom logging in the Metabase. # O8 I* Q* p+ Y
为此,/LM/Logging/Custom Logging 项及其子项从本地配置数据库复制到 Svr126 的配置数据库中。
$ J+ i, g. M1 h! }示例 3:
1 e# R. D0 g7 w  t0 r通过比较标准的 import 操作与使用 /merge 参数的 import 操作,该示例说明了 /merge 参数的使用方法。该示例中的这两个命令通过使用同一个导入文件 Invest_vdir.xml 更新网站的虚拟目录 Investments 的属性。
, b7 E6 ?2 m* d+ I+ C下面的示例显示在运行任何导入操作之前的 Investments 配置数据库项。(该示例是从通过使用 iisback.vbs 创建的配置数据库的备份副本中提取的)。0 _' K2 l7 r4 E( H& X0 _* m; X. c
导入之前的配置数据库" v  i" R: s: w, r8 f, V
<IIsWebVirtualDir Location="/LM/W3SVC/1509060625/root/Investments"
" F$ r! B1 L- h8 @7 P( Y2 D0 nAccessFlags="AccessRead | AccessScript"
& ~$ B$ a0 [9 \& C1 nAppFriendlyName="Investments" 9 ^7 u! ?6 V' C6 V+ M! b; A
AppIsolated="2" # }- V# D' I) B
AppRoot="/LM/W3SVC/1509060625/Root/Investments" # t! w2 T, |( ?, C! t
DirBrowseFlags="DirBrowseShowDate | DirBrowseShowTime | DirBrowseShowSize | DirBrowseShowExtension | DirBrowseShowLongDate | EnableDefaultDoc" + x: T* t7 H  S2 r2 R3 t1 E
Path="E:\public\Download" + U+ y7 S9 X  s2 \# z4 ?5 {8 `
> ; F6 \! t3 f5 d) Y/ U, s
</IIsWebVirtualDir>
# A& s; y) H1 m! h0 l下面的示例说明了要在 /import 操作中使用的 Invest_vdir.xml 文件的内容。(该示例是通过导出 Investments 配置数据库项然后编辑该导出文件来创建的。)请注意,Investments 项的下列属性在 XML 文件中发生变化:
  • AccessFlags 属性的值已更改。
  • 添加了 AuthFlags 属性。
  • 忽略了 DirBrowseFlags 属性。
5 _- r. g' q  Z* E: }8 s$ I
导入文件内容
% X/ d6 A8 h1 \. d<IIsWebVirtualDir Location="/LM/W3SVC/1509060625/root/Investments"
: h6 m3 j6 p1 M6 YAccessFlags="AccessRead" , o0 i# O! D7 R% c& n
AuthFlags="AuthAnonymous | AuthNTLM" / u- ]' V. j1 @0 n9 D
AppFriendlyName="Investments" 7 E- O- P# o8 s
AppIsolated="2" ' Y6 ~/ N. X  u1 c  m/ }
AppRoot="/LM/W3SVC/1509060625/Root/Investments"
% b6 Y5 J$ n9 b* ]% nPath="E:\public\Download" ; |; O. M" r0 e5 |
>
% T1 L; S  l1 U( U3 s</IIsWebVirtualDir>
: ^; p: o- K% s命令 1:Standard Import
5 }' g+ T: y( k2 Q# y. ~下面的命令在不使用 /merge 参数的情况下将 Invest_vdir.xml 文件导入到配置数据库中。该命令指示 IIS 将配置数据库中的 Investments 项替换为 XML 文件中的 Investments 项。该命令使用 /f 参数指定导入文件,并在源路径 (/sp) 和目标路径 (/dp) 参数中使用相同的配置数据库路径。) J6 O  v9 V* v3 j. T2 P
iiscnfg /import /f e:\iistest\Invest_vdir.xml /sp /LM/W3SVC/1509060625/root/Investments /dp /LM/W3SVC/1509060625/root/Investments * R: }. E' _, c& C
作为该命令的结果,配置数据库中的 Investments 项与 Invest_vdir.xml 导入文件中的 Investments 项完全相同。( n' |$ G! ]# e/ k3 t( s: i
命令 2:Import and merge4 g4 m! x5 U8 d) \( q! Q
下面的命令将 Invest_vdir.xml 文件中的 Investments 项合并到配置数据库中。/merge 参数命令 IIS 将导入文件中的新属性添加到配置数据库中,使不在导入文件中的配置数据库属性保持不变,当属性同时出现在导入文件和配置数据库中时应用导入文件中的值。除了添加了 /merge 参数以外,该命令与命令 1 相同。2 T# M5 ?8 j3 p, R  J/ A) ^% j
iiscnfg /import /f e:\iistest\Invest_vdir.xml /sp /LM/W3SVC/1509060625/root/Investments /dp /LM/W3SVC/1509060625/root/Investments /merge
( M) r5 ], B3 m作为该命令的结果,配置数据库中 Investments 项的内容成了它的多个源的组合,如下面的示例所示。请注意,配置数据库中 Investments 项的下列属性发生了变化。
  • 出现在配置数据库和 XML 文件中 AccessFlags 属性的值已更改。此时,XML 文件中的值便显示在配置数据库中。
  • 添加了只在 XML 文件中显示的 AuthFlags 属性。
  • 以前只在配置数据库中显示的 DirBrowseFlags 属性保持不变。
: o$ P3 x. H/ M! @
<IIsWebVirtualDir Location="/LM/W3SVC/1509060625/root/Investments" * m4 S0 ~6 {+ `# t$ |8 E
AccessFlags="AccessRead"
8 \, l. ~( g5 j9 Z4 a) yAppFriendlyName="Investments" $ V1 c' B, b1 a
AppIsolated="2" : A5 f3 `% w- T8 V- L( w9 S
AppRoot="/LM/W3SVC/1509060625/Root/Investments" % x- Y7 G$ t6 m7 \! T6 S) n
AuthFlags="AuthAnonymous | AuthNTLM" 2 \, D9 n+ n: d4 _/ ~5 g
DirBrowseFlags="DirBrowseShowDate | DirBrowseShowTime | DirBrowseShowSize | DirBrowseShowExtension | DirBrowseShowLongDate | EnableDefaultDoc"
6 ^" j7 H) ^1 x! yPath="E:\public\Download" ' f/ W5 |. @9 c3 _4 M' X; g/ N
>
2 l% D: o5 b/ U2 S. {2 K. q  @7 v% j</IIsWebVirtualDir>
+ U7 E/ M8 L2 v- C相关信息
( [5 a, `" L  t$ h; a  v
' X) V4 K$ \. O
- O, E& X2 Q; p" r) z1 U' V  \# p( q! s- X9 `1 m


返回列表
Namecheap
Namecheap.com - Cheap domain name registration, renewal and transfers - Free SSL Certificates - Web Hosting
互联网安全