Windows Server 2008 R2 + IIS 7.5 + ASP.NET 4.0 = HTTP Error 500.0
- by Dave
I am having an impossible time getting asp.net 4.0 to work in any fashion at all.  In fact, I completely wiped my server, reinstalled with Server 2008 R2 Standard (running on a VMWare ESXi box, not that it should matter), and cannot even get a test .aspx page to work.  
Here is exactly what I did:  
Installed 2008 R2 Standard
Activated windows and enabled Remote Desktop
Installed the Web Server Role with the necessary role services(common http, asp.net, logging, tracing, management service and FTP)
Enabled the management service
Installed .Net Framework 4.0 via web executable
Added FTP publishing to the default web site
Switched default web site application pool to asp.net 4.0 (integrated)
Added a 'test.aspx' file to the inetpub\wwwroot folder (contents below)
Opened a browser to http://localhost/test.aspx and received a 500.0 error (also below)
What am I missing?  I haven't touched IIS in a while (3+ years), so it could be something stupid/trvial.  Please point it out, call me a noob; my ego can take it.
Thanks,
Dave
test.aspx  
<% @Page language="C# %>
 <html>
 <head>
    <title>Test.aspx</title>
 </head>
 <body>
    <asp:label runat="server" text="This is an asp.net 4.0 label" />
 </body>
 </html>
Error page:  
Module  AspNetInitClrHostFailureModule
Notification    BeginRequest
Handler PageHandlerFactory-Integrated-4.0
Error Code  0x80070002
Requested URL   http://localhost:80/test.aspx
Physical Path   C:\inetpub\wwwroot\test.aspx
Logon Method    Not yet determined
Logon User  Not yet determined
Trace:  
And in my trace file I get:
96. view trace Warning -SET_RESPONSE_ERROR_DESCRIPTION 
ErrorDescription 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.
97. view trace Warning -MODULE_SET_RESPONSE_ERROR_STATUS 
ModuleName AspNetInitClrHostFailureModule 
Notification 1 
HttpStatus 500 
HttpReason Internal Server Error 
HttpSubStatus 0 
ErrorCode 2147942402 
ConfigExceptionInfo  
Notification BEGIN_REQUEST 
ErrorCode The system cannot find the file specified. (0x80070002)
The application error log shows:  
Log Name:      Application
Source:        Microsoft-Windows-IIS-W3SVC-WP
Date:          5/28/2010 2:08:10 PM
Event ID:      2299
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      win-ltfkdo1dnfp
Description:
An application has reported as being unhealthy. The worker process will now request a recycle. Reason given: 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 data is the error.   
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-IIS-W3SVC-WP" Guid="{670080D9-742A-4187-8D16-41143D1290BD}" EventSourceName="W3SVC-WP" />
    <EventID Qualifiers="49152">2299</EventID>
    <Version>0</Version>
    <Level>2</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2010-05-28T21:08:10.000000000Z" />
    <EventRecordID>1663</EventRecordID>
    <Correlation />
    <Execution ProcessID="0" ThreadID="0" />
    <Channel>Application</Channel>
    <Computer>win-ltfkdo1dnfp</Computer>
    <Security />
 </System>
 <EventData>
 <Data Name="Reason">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.
 </Data>
    <Binary>02000780</Binary>
</EventData>
</Event>