php 控制iis

來源:互聯網
上載者:User

 

  <?php

 # PHP控制IIS的相關屬性

 # 收集人:韓湘子

 # 郵箱:hanxiangzi@gmail.com

 # MSN:hanxiangzi@gmail.com

 # QQ:220670                                                                                           
 

 /*網站屬性和使用方法*********************************************************/
 
  $LocalHostObject = New Com ("IIS://localhost/w3svc") ;

  $Site = $LocalHostObject->Create("IIsWebServer",網站標識符);

  //網站類型
  $Site->Class;

  //網站名稱
  $Site->ServerComment;
 
  //網站綁定的IP:連接埠:網域名稱
  $Site->ServerBinDings;

  //網站標識符
  $Site->Name;

  //擷取網站主目錄
  $Site->GetObject("IIsWebVirtualDir","ROOT");
  $Site->Path;

  //匿名訪問時所使用的帳號
  $Site->AnonymousUserName;

  //匿名訪問時所用帳號的口令
  $Site->AnonymousUserPass;

  //記錄檔的目錄
  $Site->LogFileDirectory;

  //是否允許FrontPage擴充
  $Site->FrontPageWeb = True;

  //網站的類型
  $Site->KeyType = "IIsWebServer";

  //網站描述
  $Site->bewrite;

  //允許使用的頻寬,1024=1K,如果是100K的話等於102400
  $iissite->MaxBandwidth = '102400';

  //允許IIS同時多少個並發數,也就是平常說的IIS串連數
  $iissite->MaxConnections = '100';

  //是否開通日誌
  $iissite->LogType = "0";  //0為不開通,1為開通W3C格式的日誌

  //指定404錯誤,Url為當前網站的檔案
  $iissite->HttpErrors = "404,0,Url,/404.htm";

  //指定404錯誤,FILE為當前伺服器絕對路徑的檔案
  $iissite->HttpErrors = "404,0,FILE,/404.htm";

  //指定指令碼映身,有關這下面的副檔名映射可以查看預設網站的一些,複製過來即可,下面是用PHP做的例子
  $iissite->ScriptMaps = ".php,E:softphp-5.2.3-Win32(1)php5isapi.dll,5,Get,HEAD";

 /*網站的預設文件*********************************************************/

  //是否允許預設文件
  $Site->EnableDefaultDoc = True;

  //網站的預設文件
  $Site->DefaultDoc = "index.php,index.html";  //以英文標點,隔開

 /*網站的運行狀態*********************************************************/

  $SiteStatus = New Com ("IIS://LocalHost/w3svc/".$ServerID);

  //網站運行狀態
  $SiteStatus->Status;
  
   //運行狀態返回以下幾個整數值:
  
   //1代表網站運行狀態為“正在啟動”
   $SiteStatus->Status = 1;

   //2代表網站運行狀態為“已經啟動”
   $SiteStatus->Status = 2;

   //3代表網站運行狀態為“正在停止”
   $SiteStatus->Status = 3;

   //4代表網站運行狀態為“已經停止”
   $SiteStatus->Status = 4;

   //5代表網站運行狀態為“正在暫停”
   $SiteStatus->Status = 5;

   //6代表網站運行狀態為“已經暫停”
   $SiteStatus->Status = 6;

   //7代表網站運行狀態為“正在繼續”,就是暫停後的繼續運行
   $SiteStatus->Status = 7;

   //-1代表出錯
   $SiteStatus->Status = -1;

  //啟動網站
  $SiteStatus->Start;
 
  //停止網站
  $SiteStatus->Stop;

  //繼續網站,就是暫停後的繼續運行
  $SiteStatus->Continue;

  //暫停網站
  $SiteStatus->Pause;

 /*網站的應用程式設定*********************************************************/

  $iisdir = $Site->Create("IIsWebVirtualDir","ROOT");


  //佈建網站的應用程式可讀,就是什麼也不能執行
  $iisdir->AccessRead = True;

  //佈建網站的應用程式可執行,只包括指令碼,不包括執行檔案
  $iisdir->AccessScript = True;

  //佈建網站的WEB目錄可寫,這個很危險
  $iisdir->AccessWrite = True;

  //佈建網站的應用程式可執行,包括指令碼和執行檔案
  $iisdir->AccessExecute = True;

  //佈建網站的目錄
  $iisdir->Path = "d:webuserwebdir";

  //建立新的應用程式
  $iisdir->AppCreate(True) ;  //在這裡不能 = True;,只能用(True)

  //允許父路徑,也就是允許.
  $iisdir->AspEnableParentPaths = True;

 /*應用程式集區相關設定*********************************************************/

  $appList = New Com ("IIS://Localhost/w3svc/AppPools");

  //列出應用程式集區的名稱
  $appList->Name;

  //列出應用程式集區的狀態
  $appList->AppPoolState;

   //運行狀態返回以下幾個整數值:
  
   //1代表應用程式集區運行狀態為“正在啟動”
   $appList->Status = 1;

   //2代表應用程式集區運行狀態為“已經啟動”
   $appList->Status = 2;

   //3代表應用程式集區運行狀態為“正在停止”
   $appList->Status = 3;

   //4代表應用程式集區運行狀態為“已經停止”
   $appList->Status = 4;

   //5代表應用程式集區運行狀態為“正在暫停”
   $appList->Status = 5;

   //6代表應用程式集區運行狀態為“已經暫停”
   $appList->Status = 6;

   //7代表應用程式集區運行狀態為“正在繼續”,就是暫停後的繼續運行
   $appList->Status = 7;

   //-1代表出錯
   $appList->Status = -1;

 /*WinNT使用者和密碼相關設定*********************************************************/

  $usernameobj = New Com("WinNT://iim");

  //建立一個系統使用者
  $user = $usernameobj->Create("user",$UserName);

  //設定使用者密碼
  $user->SetPassword($UserPass);

  //設定使用者全名
  $user->FullName = "使用者全名";

  //設定使用者說明
  $user->Description = "使用者說明";

  //設定使用者密碼永久正確
  $user->UserFlags = &H10000

  //設定使用者下次登入時須變更密碼
  $user->UserFlags = &H20000

  //設定使用者不得變更密碼
  $user->UserFlags = &H0040

  //設定使用者帳戶暫時停用
  $user->UserFlags = &H0002


  //以上動作建立一個系統使用者

 


 /*執行相關動作*********************************************************/

  //執行以上的動作,但在網站運行狀態裡邊的start,stop,pause,continue這四個動作中無須執行->SetInfo();
  $Object->SetInfo();  //$Object為你所建立的組件名稱

?>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.