2017-09-15 224 views
0

我試圖創建一個PowerShell腳本來創建使用IIS 7或8的應用程序池和虛擬目錄(不知道我擁有哪一個,我正在使用Windows Server 2012 R2)如何在PowerShell中爲IIS創建應用程序池和虛擬目錄

反正這裏是我用來創建一個名爲的.Net 2.0

Import-Module WebAdministration 
New-Item –Path IIS:\AppPools\.Net v2.0 

一個應用程序池的代碼,但我得到一個錯誤,說明

PS IIS :\ Sites>導入模塊Web管理New-Item -Path IIS:\ AppPools.Net v2.0未定義的對象類型.Net。參數名稱: nodeName在行:2 char:1 + New-Item -Path IIS:\ AppPools.Net v2.0 + ~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~ + CategoryInfo:InvalidOperation:(:) [],ArgumentException的 + FullyQualifiedErrorId:NewItemDynamicParametersProviderException

我覺得這可能是因爲在網絡和2.0版之間的空間

也沒有物理路徑,所以我不知道如何創建一個腳本多個應用程序池在一個,有的使用v2.0和v4.0有些正在使用Integrated和Classic作爲管線和som e正在使用物理路徑,而有些則沒有。如果有人能指引我正確的方向?我沒有使用網站只是應用程序池和虛擬目錄。

謝謝!

編輯 我能夠通過使用

[system.reflection.assembly]::Loadwithpartialname("Microsoft.Web.Administration") 
$servermgr = New-Object Microsoft.web.administration.servermanager 
$servermgr.ApplicationPools.Add(".NETExample") 
$servermgr.CommitChanges()  
+0

試用引號'New-Item -Path'IIS:\ AppPools \ .Net v2.0'' PowerShell會假定參數值是字符串,所以爲方便起見,您經常可以不用引號而離開,但如果必須有在它的空間,使用報價。 – TessellatingHeckler

+0

謝謝,我實際上使用了不同的代碼。我繼續並在**編輯**上面公佈了上述解決方案。 –

回答

0

運行第一Import-Module WebAdministration,這將讓你在IIS創建路徑來解決這個問題:\

然後:

$iisAppPoolName = ".Net v2.0" 
$iisAppPoolDotNetVersion = "v2.0" 
$iisAppName = "Net 2" 
$directoryPath = "E:\Net2" 

cd IIS:\AppPools\ 

New-Item $iisAppPoolName 

檢查這個站點:Create IIS App Pool

+0

當我運行它時,出現此錯誤 未定義的對象類型.Net v2.0。 參數名稱:nodeName 在行:9 char:1 + New-Item $ iisAppPoolName + ~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: InvalidOperation:(:) [],ArgumentException的 + FullyQualifiedErrorId:NewItemDynamicParametersProviderException –

+0

Let's嘗試以下操作: 首先導入模塊: '導入模塊WebAdministration' 然後, 'GET-ChildItem IIS:\站點「並粘貼輸出。 – imjoseangel

+0

PS IIS:\ Sites \> Get-ChildItem IIS:\ Sites 名稱ID狀態物理路徑綁定 –

相關問題