介紹
IIS PowerShell 名空間包括諸如: Web-Sites, Apps, Virtual Directories 和 Application Pools.
使用內置的PowerShell cmdlets可以很容易創建一個名空間項和管理該項.
創建Web站點
如果您熟悉PowerShell 的話,就會知道在各種PowerShell 名空間下New-Item cmdlet 通常被用於創建
新項。 舉個例子,當前命令 "New-Item c:\TestDirectory"會創建一個新的文件夾 (盡管多數人使用New-Item
的別名命令"MD" 或 "MKDIR"). 在IIS 7.0 PowerShell 名空間下,New-Item 也常用於創建新的Web站點.
參數
在創建一個文件系統路徑時,您需要指定一個路徑名稱. 不巧的是當前創建WEB站點時這是不夠的. 除了像
文件系統路徑這樣的參數之外,還需要network bindings. 下面的命令用於創建一個新的WEB站點並使用dir命令
進行顯示:
PS IIS:\Sites> New-Item iis:\Sites\TestSite -bindings @{protocol="http";bindingInformation=":80:TestSite"} -physicalPath c:\test
PS IIS:\Sites> dir
Name ID State Physical Path Bindings
---- -- ----- ------------- --------
Default Web Site 1 Started f:\inetpub\wwwroot http *:80:
TestSite 2 Started c:\test http :80:TestSite
這裡直接使用了 -physicalPath 參數. 然而您可能會問: -bindings 看起來咋這麼復雜?.
在構造時通常使用hashtable (在 這裡 了解更多PowerShell hash tables信息).hash table 中的鍵值對表示一個
設置集合,該集合在IIS站點bindings section中會反射出相關屬性:
<bindings>
<binding protocol="http" bindingInformation=":80:TestSite" />
</bindings>
現在我們找出了一個使用hash table的原因: IIS 配置是可以使用屬性進行擴展的。 (查看 這裡了解更多信息). 您
可以想像一下使用其它屬性擴展 <binding> 元素節點. hash table 的鍵值對提供了這種彈性.
坦白說,該語法有一點復雜. 我們正在考慮在Tech Preview中封裝一些典型任務:比如創建站點的方法或腳本。