2011-01-07 24 views
18

Der folgende Code demonstriert, was ich dachte, könnte funktionieren, aber es ändert nicht den App-Pool - es bleibt auf seinen aktuellen Wert gesetzt (obwohl die $ Site-Objekt tut Update):Wie können Sie den App-Pool einer IIS-Site mit den Powershell Web Admin-Befehlszeilen ändern?

import-module WebAdministration 

$site = get-item "IIS:\Sites\Project" 
$site.ApplicationPool = "ProjectAppPool" 
$site | set-item 

Wenn Sie die Website mit New-WebSite unter Angabe der -ApplicationPool Parameter erstellen, erstellt es wie erwartet. Welchen Powershell IIS-Webbefehl muss ich verwenden, um einen vorhandenen Website-App-Pool auf etwas anderes zu ändern?

Antwort

32

ApplicationPool ist eine Eigenschaft auf der Website im IIS: Laufwerk. Stellen Sie es so auf:

#site level 
Set-ItemProperty 'IIS:\Sites\Default Web Site' ApplicationPool ProjectAppPool 

#app level 
Set-ItemProperty 'IIS:\Sites\Default Web Site\AppName' ApplicationPool ProjectAppPool 

Wenn Sie die PowerShell Community Extensions installiert haben, können Sie die Show-Baum-Befehl verwenden erkunden diese Antriebe zB:

Show-Tree IIS:\Sites -ShowProperty -Depth 1 
+0

Dank und nett über die Gemeinschafts Erweiterungen zu wissen, zu . – ZeroBugBounce

+0

Funktioniert das in Powershell v1? – EdmundYeung99

+17

Ich habe festgestellt, dass die "Application Pool" -Eigenschaft Groß-und Kleinschreibung ist, und dass Sie ApplicationPool zu Anwendungspool ändern müssen. z.B. Set-ItemProperty 'IIS: \ Sites \ Standardwebsite \ AppName' applicationPool ProjectAppPool – jmc

Verwandte Themen