如何使用PowerShell设置IIS ApplicationPool"专用内存限制"值

Ale*_*nko 2 iis powershell web-administration

我正在使用PowerShell自动部署网站,最近发现了无法使用PS设置的AppPool设置.或者至少我没有设法找到如何做到这一点.

$appPool = $serverManager.ApplicationPools.Add($sitename)...
Run Code Online (Sandbox Code Playgroud)

我需要将"Private Memory Limit"设置为某个值,但看起来在ApplicationPoolApplicationPoolRecycling对象中没有这样的属性.

anybode是否知道此问题的解决方法?

Dav*_*tin 8

此脚本使用Get-WebconfigurationSet-WebConfiguration获取所有应用程序池的私有内存值.您可以单独设置每个或设置应用程序池默认值以继承它们.我已经注释掉实际完成该组的线.

import-module webadministration

$applicationPoolsPath = "/system.applicationHost/applicationPools"
$applicationPools = Get-WebConfiguration $applicationPoolsPath

foreach ($appPool in $applicationPools.Collection)
{
    $appPoolPath = "$applicationPoolsPath/add[@name='$($appPool.Name)']"
    Get-WebConfiguration "$appPoolPath/recycling/periodicRestart/@privateMemory" 
    # Set-WebConfiguration "$appPoolPath/recycling/periodicRestart/@privateMemory" -Value 1000
}
Run Code Online (Sandbox Code Playgroud)