程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> 關於C# >> iis管理adsutil.vbs的使用基礎教程

iis管理adsutil.vbs的使用基礎教程

編輯:關於C#
 

一、簡單介紹
  adsutil.vbs是什麼?相信用過IIS的網管員不會不知道。這是IIS自帶的提供於命令行下管理IIS的一個腳本。位於%SystemDrive%\Inetpub\AdminScripts目錄下。足足有95,426 字節大小。這麼大的腳本一看就知道功能強大。事實也的確如此。基本上我的感覺它就是個命令行下的'Internet 信息服務管理器'。(事實上2000的服務器上%SystemDrive%\Inetpub\AdminScripts下原有20多個vbs文件以供管理。而到了2003則只剩下adsutil.vbs一個了。足以說明它的功能是多麼復雜)
  提到adsutil.vbs就不得不提到MetaBase.bin。這個文件是IIS最重要的配置文件。所有對IIS的設置最終都會儲存在這個文件中。IIS管理器和adsutil.vbs就是通過對這個文件讀取配置信息來顯示給用戶的。MetaBase.bin的儲存結構十分像注冊表,是一種樹型儲存結構。IIS管理器和adsutil.vbs通過一個Adspath的路徑來訪問MetaBase.bin。路徑是由IIS:\開頭,其中LocalHost表示本地服務器,而w3svc表示IIS服務。如IIS:\LocalHost/w3svc/1表示本地服務器上的第一個web站點。IIS:\LocalHost/w3svc/1/root/Vdir表示第一個web站點根目錄下的Vdir虛擬目錄。
  有了這些前置知識,下面再回到adsutil.vbs來看看它的用法吧:
  C:\Inetpub\AdminScripts>cscript adsutil.vbs //別忘了鍵入cscript.exe這個腳本宿主文件名哦
  Microsoft (R) Windows Script Host Version 5.6
  版權所有(C) Microsoft Corporation 1996-2001。保留所有權利。
  
  Usage:
   ADSUTIL.VBS [ []]
  
  Description:
  IIS administration utility that enables the configuration of metabase properties.
  
  Supported Commands: //支持的命令。這個最重要
   GET, SET, ENUM, DELETE, CREATE, COPY,
   APPCREATEINPROC, APPCREATEOUTPROC, APPCREATEPOOLPROC, APPDELETE, APPUNLOAD, APPGETSTATUS
  
  Samples: //簡單的幾個例子
   cscript adsutil.vbs GET W3SVC/1/ServerBindings //查看第一個虛擬web站點的邦定端口。這裡的W3SVC/1是IIS:\ LocalHostW3SVC/1的簡寫,而ServerBindings是他的屬性。下同。
   cscript adsutil.vbs SET W3SVC/1/ServerBindings ':81:' //設定第一個虛擬web站點的邦定端口為81。
   cscript adsutil.vbs CREATE W3SVC/1/Root/MyVdir 'IIsWebVirtualDir' //在第一個虛擬web站點根目錄下建立一個MyVdir的虛擬目錄。後面的'IIsWebVirtualDir'指的是目錄類型。
   cscript adsutil.vbs START_SERVER W3SVC/1 //啟動第一個虛擬web站點。
   cscript adsutil.vbs ENUM /P W3SVC //查看IIS的所有站點。

For Extended Help type:
cscript adsutil.vbs HELP //如果想要進一步的查看幫助,鍵入此命令。我這裡就不轉了。防止有人說我賺稿費。大家可以自己看看。

  以上'//'後的文字都是我添加上去的注釋(下同)。相信這樣應該可以看懂了吧大家。
  我們所常用的adsutil.vbs的命令有這麼幾個:GET, SET, ENUM, DELETE, CREATE。現在我來一一說明:
  GET命令通常是用來查看目錄的各項屬性值的。
  SET是用來設定目錄屬性用的。
  ENUM也是用來查看屬性。所不同的是他直接把所有設置了的屬性直接全部顯示出來。通常一個目錄就有好幾頁東西可看......他有個可選的'/p'開關符。加上了此開關的話。他只會列出此目錄下的所有虛擬目錄。
  DELETE命令是用來刪除虛擬目錄的。
  CREATE則是創建一個虛擬目錄。
  另外還有幾個命令:START_SERVER、STOP_SERVER、PAUSE_SERVER、CONTINUE _SERVER。分別是啟動、停止、暫停、繼續虛擬站點的運行。
  一個虛擬目錄的大致屬性值如下(我只列出了可能我們所常用的,否則會太長了):

KeyType : (STRING) 'IIsWebVirtualDir' //目錄類型,(STRING)說明它是個字符串類型的屬性
AppRoot : (STRING) '/LM/W3SVC/1/ROOT' //目錄IIS路徑
AppFriendlyName : (STRING) '默認應用程序' //應用程序名
AppIsolated : (INTEGER) 2 //指定運行於進程外還是進程中,數字類型屬性。
HttpCustomHeaders : (LIST) (1 Items) //自定義IIS數據頭
'Powered By : www.WoFeiWo.Info'
HttpErrors : (LIST) (42 Items) //各種IIS代碼所返回的頁面。可以自行設置。我這裡將會顯省略了。
DefaultDoc : (STRING) 'Default.htm,index.htm,Default.asp,in
dex.asp,Default.php,index.php,Default.aspx,index.aspx' //目錄的默認主頁面名稱。
Path : (STRING) 'D:\ftp' //目錄所真正映射的物理路徑
AccessFlags : (INTEGER) 513 //我也不知道這是啥。反正沒設置過。好像會自動設置的
AccessExecute : (BOOLEAN) False //目錄的執行權限,是布爾值
AccessSource : (BOOLEAN) False //目錄的Webdav訪問是否允許
AccessRead : (BOOLEAN) True //目錄的只讀權限
AccessWrite : (BOOLEAN) False //目錄的寫權限
AccessScript : (BOOLEAN) True //目錄是否允許執行腳本
AccessNoRemoteExecute : (BOOLEAN) False
AccessNoRemoteRead : (BOOLEAN) False
AccessNoRemoteWrite : (BOOLEAN) False
AccessNoRemoteScript : (BOOLEAN) False
AccessNoPhysicalDir : (BOOLEAN) False
ScriptMaps : (LIST) (27 Items) //應用程序擴展名映射
'.asa,C:\WINDOWS\system32\inetsrv\asp.dll,5,GET,HEAD,POST,TRACE'
'.asp,C:\WINDOWS\system32\inetsrv\asp.dll,5,GET,HEAD,POST,TRACE'
'.aspx,C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll,1,GET,HEA
D,POST,DEBUG'
.................. //這裡省略了n多數據
AspEnableParentPaths : (BOOLEAN) True
AppPoolId : (STRING) 'DefaultAppPool' //應用程序池名稱
DontLog : (BOOLEAN) True //禁止IISLog紀錄

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved