默认情况下,新的应用程序池将每 1740 分钟按照固定时间间隔进行自我回收。
我想清除此设置以便 IIS 永远不会回收它。
答案1
这将清除应用程序池上的时间间隔设置
Import-Module WebAdministration
$pool = "IIS:\AppPools\mywebapp"
Set-ItemProperty $pool -Name Recycling.periodicRestart.time -Value 0.00:00:00
答案2
进一步回答所选的答案。对于那些使用多个 IIS 站点的人来说,这里有一个脚本,它将禁用所有启用了“常规时间间隔”刷新的站点。
Import-Module WebAdministration
$sites = Get-ChildItem 'IIS:\AppPools\' | Where-Object { $_.recycling.periodicRestart.time.TotalMilliseconds -gt 1 }
foreach ($s in $sites) {
Set-ItemProperty $s.PSPath -Name Recycling.periodicRestart.time -Value 0.00:00:00
}