![](/img/trans.png)
[英]how to restart IIS app pool in powershell using the cmd line
[英]How To Populate Shutdown Executable field in IIS App Pool through Powershell
在 Internet 信息服务管理器中,对于每个应用程序池,都有一个选项可以设置关闭可执行文件的路径,以及高级设置中Rapid-Fail Protection
下的任何参数。
我有几个应用程序池(几百个),并且想使用 PowerShell 脚本自动将每个应用程序池的关闭字段设置为我创建的程序。
是否存在这样的 PowerShell 命令? 我仔细阅读了适当的文档,但没有结果。
简短的回答? 我无法在 Powershell 中具体弄清楚,但是.. 使用“appcmd.exe”我能够做到这一点。 我编写了一个脚本,试图重新启动应用程序池并将结果通过电子邮件发送给我。 该脚本由快速故障保护启动。 如果你愿意,我也可以分享这个脚本......但是,我真的不想像你提到的那样手动设置每个应用程序池,所以我想出了以下内容......它不像一些那么漂亮或优雅,但是,它有效:
$poolList = (Get-ItemProperty -Path "IIS:\AppPools\*").name
ForEach($pool in $poolList) {
C:\Windows\System32\inetsrv\appcmd.exe set apppool "$pool" /Failure.autoshutdownParams:"D:\_Scripts\CheckPools.ps1 -PoolName $pool"
C:\Windows\System32\inetsrv\appcmd.exe set apppool "$pool" /Failure.autoshutdownexe:"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
Get-ItemProperty -Path "IIS:\AppPools\$pool" -name Failure.autoshutdownexe|select *
}
我可以为我确认,使用 Windows 2016,此脚本设置关闭可执行文件和关闭可执行文件参数。 Executable 设置为启动 powershell,参数调用 powershell 脚本并将应用程序池名称传递给它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.