Caution when stopping and starting an IIS application pool with appcmd

When starting and stopping IIS 7 application pools from command line with appcmd.exe, you should be aware of a behavior that can sometimes lead to unintended circumstances. To explain it, lets first review what happens when you stop an application pool with the InetMgr.exe tool: 1) Set the autoStart property of the <applicationPool> configuration element to … [Read more…]

When to restart IIS when making changes to your application

Knowing when to restart IIS to pick up various types of changes to your application has traditionally been a challenge. IIS and ASP.NET are both stateful software systems, which heavily rely on cached state that is loaded once to provide high performance.  They also recognize the downside of being stateful – having to refresh the … [Read more…]

Finding your way around IIS 7 configuration sections with AppCmd

The IIS 7 configuration system contains 50+ configuration sections (100+ if you count .NET Framework configuration), 477 attributes, and 57 collections.  This can make it pretty challenging to figure out exactly what IIS 7 configuration section needs to be used to turn on some particular behavior, and then exactly syntax the configuration in that section should … [Read more…]

Anatomy of an IIS7 configuration path

If you have worked with IIS6 and previous versions of IIS, you are most likely familiar with the IIS metabase paths.  You know, the ones that look like LM/W3SVC/1/ROOT.  These metabase paths serve as a mechanism to identify a part of the IIS website hierarchy, or a url therein, for the purposes of read/writing their … [Read more…]