Todd Anglin's Code Campground

A casual look at the world .NET coding

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.serverError

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.

controlPanel 

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.

winFeatures1

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.

winFeatures2

Click okay, wait a while, and you should be back in business.

pleaseWait

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.

Comments

ca8msm said:

This isn't just new to Vista. ASP.NET support was also disabled by default in Windows Server 2003 so it's something that has been around for a while.

# March 13, 2008 6:12 AM

tanglin05 said:

@ca8msm- That's true and a good point. I've admittedly done most of my dev work over the years on WinXP or well configured Win 2k3 boxes (as in, I didn't run in to the problem on Win2k3), but it is fair to note this is not a totally new problem. It just looks different in Vista with IIS7.

That said, I still think it is silly to disable ASP.NET dev features on a consumer OS when all other dev features are enabled by default. I suppose this quirk just reveals how Win2k3-based Vista really is.

-Todd

# March 13, 2008 1:30 PM

ca8msm said:

"It just looks different in Vista with IIS7."

Yes, that's definitely true as the process you've clearly described above is a lot different to how you enabled it in win2k3.

# March 14, 2008 4:45 AM

Bill Staples said:

Actually, IIS7 installs only a static-file web server by default.  This is to provide a minimal web server that is secure by default and easy to customize for your particular needs.  Classic ASP is not installed by default, but since you upgraded from XP, IIS preserved your settings and left ASP installed.  It sounds like for your particular box, ASP.NET was not upgraded, however, which would be a bug.  ASP.NET should have been enabled as well, assuming you had it installed on XP before the upgrade.

# March 15, 2008 12:08 AM

mehfuzh said:

I wonder why Asp.net is not enabled by default. I think it is a matter to consider :-)

# June 1, 2008 3:26 PM