At times, debugging cryptic IIS and ASP.NET error messages can be quite frustrating. I recently ran into the following generic error message when deploying an ASP.NET site to a new test environment:
Server Application Unavailable
The web application you are attempting to access on this web server is currently unavailable. Please hit the “Refresh” button in your web browser to retry your request.
Administrator Note: An error message detailing the cause of this specific request failure can be found in the application event log of the web server. Please review this log entry to discover what caused this error to occur.
The Event Viewer
So what do we do here? This error message is as general as they come and offers us no direction as to why we are receiving it. In situations like this our first step should always be to check the Event Viewer on the server, which can accessed under Administrative Tools. As noted in the in the error message we’re interested in checking the Application Event Log in the Event Viewer.
After looking through some of the recent logs you should come across an error message which will provide a little more guidance as to why the application is producing an error. In my case, I came across the following entry:
It is not possible to run two different versions of ASP.NET in the same IIS process. Please use the IIS Administration Tool to reconfigure your server to run the application in a separate process.
Turns out this is a rather simple error to resolve. This particular development server was running IIS6 which does not allow you to run more than one version of the .NET framework in the same application pool. Resolving the issue was just a matter of creating a new application pool and assigning the site to it.