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) :
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?
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.