以下代码演示了我以为可能会工作,但它不会更改应用程序池 – 它仍然设置为其当前值(即使$site对象更新):
import-module WebAdministration $site = get-item "IIS:\Sites\Project" $site.ApplicationPool = "ProjectAppPool" $site | set-item
如果您使用指定-ApplicationPool参数的New-WebSite创建站点,则会按预期创建.必须使用什么Powershell IIS Web命令来将现有站点的应用程序池更改为不同的?
解决方法
ApplicationPool是IIS:驱动器中网站上的一个属性.设置如下:
#site level Set-ItemProperty 'IIS:\Sites\Default Web Site' ApplicationPool ProjectAppPool #app level Set-ItemProperty 'IIS:\Sites\Default Web Site\AppName' ApplicationPool ProjectAppPool
如果您安装了PowerShell Community Extensions,可以使用Show-Tree命令来浏览这些驱动器,例如:
Show-Tree IIS:\Sites -ShowProperty -Depth 1