Fixing Vista's Default Web Development Settings
File this under "used to be easy with XP" tips and tricks for Vista. As a long time web developer on XP (all the way back to "classic" ASP), I feel I am pretty comfortable around IIS. I've successfully configured many a development site over the years and never really had much trouble. That's all changed with my recent upgrade to Vista Business and IIS7.
Now, I didn't really notice the problem at first because I was using Visual Studio's built-in web server to test most of my sites (remember the days when that wasn't an option...). While doing some performance tests for Telerik, though, I was forced to leave Visual Studio and run a site in my shiny new IIS7. I created my new "application" just like I would have a Virtual Directory-based site in IIS6 and browsed the site in Firefox. Server Error.
Server Error 500.19? Say what? I set-off checking my configuration files, making sure everything looked correct, confirming that my sites did work in Visual Studio's web server, and still, IIS served-up this "friendly" 500.19 error. So after some quick Googling (sorry Live Search, maybe after you buy Yahoo!'s search tech...I'll, er, um...give it another try...), I discovered that my wonderfully secure Vista Business installation disables ASP.NET development by default!
ASP "classic" development is enabled; ASP.NET development is not. Really?! In this day and age of .NET, why would you enable IIS development features without enabling .NET support? In my opinion, this is a bad choice on Microsoft's part. Fortunately, the solution is easy.
First, open your control panel and launch the Programs and Features interface (or type Programs in your Vista start search to find it quickly). Click on the "Turn Windows features on or off" side link.
When the the configuration window opens (and finally loads), look for the IIS settings section. You'll notice that it is "checked" with a blue box indicating not all sub-options are enabled.
Expand the IIS node and look for the World Wide Web Services > Application Development Features section. You should see that the .NET Extensibility and ASP.NET sections are unchecked. Check the ASP.NET node and the .NET Extensibility node will automatically get checked, too.
Click okay, wait a while, and you should be back in business.
Hopefully this seemingly obvious tutorial will help someone out there with the unnecessary pain that comes with the XP to Vista developer transition. If you find yourself hitting the 500.19 Server Error, this is probably your solution.