Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

in C#/Powershell - Is it possible to change the Idle TimeOut for an IIS Application Pool?

Tags:

I want to disable the idle timeout (Set it to Zero) of an application pool and I want to perform this at setup time, is it possible to perform this action from C# or PowerShell?

like image 984
Bongo Sharp Avatar asked Apr 27 '11 22:04

Bongo Sharp


2 Answers

If you are using PowerShell 2 or later, you should have access to Set-ItemProperty. You'll also want to load the WebAdministration module.

You can then do (example taken from here)

Set-ItemProperty ("IIS:\AppPools\$name") -Name processModel.idleTimeout -value ( [TimeSpan]::FromMinutes(0))

and verify that the value was changed with

Get-ItemProperty ("IIS:\AppPools\$name") -Name processModel.idleTimeout.value
like image 134
Roman Avatar answered Sep 23 '22 07:09

Roman


@R0MANARMY's answer (currently the most popular) didn't work for me. It runs fine, but the subsequent check shows that the idle timeout is unchanged.

Based on this blog post, that answer modifies an in-memory copy of the object. I modified the sample code in R0MANARMY's answer as:

Get-ChildItem IIS:\AppPools\$name | ForEach { $_.processModel.IdleTimeout = [TimeSpan]::FromMinutes(0); $_ | Set-Item; }
like image 30
Tony S Yu Avatar answered Sep 23 '22 07:09

Tony S Yu