【问题标题】:Setting AppPool Idle Timeout with PowerShell使用 PowerShell 设置 AppPool 空闲超时
【发布时间】:2012-10-02 12:04:37
【问题描述】:

如何使用 powershell 设置 IIS6 应用程序池的空闲超时?我从搜索中看到的只是如何设置不完全相同的应用程序池回收时间。

这就是出现的情况,但我认为这不是我想要的:

$destinationPool.recycling.periodicRestart.schedule

【问题讨论】:

    标签: powershell iis-6 application-pool


    【解决方案1】:

    我无法测试它,但试试这个:

    $ApplicationPool = Get-WmiObject -Class IISApplicationPoolSetting -Namespace "root/microsoftiisv2" | Where-Object {$_.Name -eq 'W3SVC/APPPOOLS/DefaultAppPool'}
    $ApplicationPool.IdleTimeout=0
    $ApplicationPool.Put()
    

    【讨论】:

    • 使用命名空间“rootmicrosoftiisv2”为我抛出了一个无效的命名空间异常,所以我将它换成了“root\MicrosoftIISv2”,它没有任何异常地执行;但是空闲时间没有改变。
    • 好的,它现在可以工作了,我的测试代码中有一个错字,它通过了不正确的应用程序名称。谢谢!
    • @vapen。谢谢。固定命名空间!
    【解决方案2】:

    使用 DSC(期望状态配置)

    cAppPool $application.AppPool.Name 
    { 
        Name                    = $application.AppPool.Name                 
        AutoStart               = $application.AppPool.AutoStart            
        StartMode               = $application.AppPool.StartMode            
        ManagedRuntimeVersion   = $application.AppPool.ManagedRuntimeVersion
        ManagedPipelineMode     = $application.AppPool.ManagedPipelineMode  
        IdentityType            = $application.AppPool.IdentityType  
        LoadUserProfile         = $application.AppPool.LoadUserProfile
        Ensure                  = "Present" 
        idleTimeout             = "00:00:00"
    }
    

    idleTimeoutstring 而不是 int 类型的事实让我有一段时间感到困惑。尝试使用 "0" 静默将其保留为默认 20 分钟

    (见cAppPool on GitHub

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-30
      • 2019-02-08
      • 2013-09-10
      • 2022-09-23
      • 2017-03-14
      • 1970-01-01
      • 2014-09-22
      • 1970-01-01
      相关资源
      最近更新 更多