How to diagnose a 500 Internal Server Error on IIS 7.5 when nothing is written to the event log

500-errorasp.net-mvciis-7.5windows-event-log

I've just deployed an update to an existing ASP.NET MVC3 site (it was already configured) and I'm getting the IIS blue screen of death stating

HTTP Error 500.0 – Internal Server Error
The page cannot be displayed because an internal server error has occurred.

However; there is nothing showing up in the Application Event Log where I would expect to see a (more) detailed description of the entry.

How can I go about diagnosing this issue?

Best Answer

Take a look at IIS7's Failed Request Tracing feature:

Troubleshooting Failed Requests Using Tracing in IIS 7
Troubleshoot with Failed Request Tracing

The other thing I would do is tweak your <httpErrors> setting because IIS may be swallowing an error message from further up the pipeline:

<configuration>
  <system.webServer>
    <httpErrors existingResponse="PassThrough" />
  </system.webServer>
</configuration>

If the site is written in Classic ASP then be sure to turn on the Send Errors to Browser setting in the ASP configuration feature:

enter image description here

And finally, if you're using Internet Explorer then make sure you've turned off Show friendly HTTP error messages in the Advanced settings (though I suspect you've done that already or are using a different browser).