What is the difference between web.config timeout and IIS timeout?

333Mhz picture 333Mhz · Aug 3, 2011 · Viewed 48.2k times · Source

What is the difference between the following entry in web.config:

 <sessionState timeout="30"/>

And this setting in IIS 7.5 (Default web site > Advanced Settings > Connection Limits) :

enter image description here

I know that the web.config is supposed to apply to the time that the ASP.NET session is kept alive, but what is the IIS setting for?

Answer

Oded picture Oded · Aug 3, 2011

The connection timeout is how long a connection from a browser to the server should take till it times out. So, when the browser requests a page/image/resource, how long should IIS wait till it terminates the connection. It is stated in seconds.

It can also be set in the web.config (example is for 2 minutes, 120 seconds):

<limits connectionTimeout="00:02:00" />

The session timeout is how long the session can live. This is across multiple connections and is stated in minutes.

They are two different settings that control different things.