IIS Application Initialization Does Not Run in ASP.NET Application

Running on Windows 8, I turned on Application Initialization for IIS from the Windows Features installation options for IIS.

I am trying to start the ASP.NET web application immediately and run the Application_Start application when restarting the application pool. I followed the instructions from this lesson , but after setting the values ​​in ApplicationHost.config and web.config, I see that nothing shoots.

Here is what I installed (which is similar to what the article suggests):

<applicationPools> <add name="MPress" autoStart="true" enable32BitAppOnWin64="true" startMode="AlwaysRunning"> <processModel identityType="LocalSystem" setProfileEnvironment="true" /> </applicationPools> <sites> <site> <application path="/MPress.Workflow.WebQueueMessageManager" applicationPool="MPress" preloadEnabled="true"> <virtualDirectory path="/" physicalPath="C:\Projects2010\Clients\MPress\MarvelPress.Workflow.WebQueueMessageManager" /> </application> <bindings> <binding protocol="http" bindingInformation="*:80:" /> </bindings> </site> </sites> 

And then in the local web.config I have:

 <system.webServer> <applicationInitialization remapManagedRequestsTo="Startup.htm" skipManagedModules="true" doAppInitAfterRestart="true"> <add initializationPage="default.aspx" /> </applicationInitialization> </system.webServer> 

Besides the doAppInitAfterRestart flag, this exactly matches the settings in this article, except for specifying my virtual application and application pool.

It seems that automatic loading of the application pool works - if I stop and restart IIS w3wp, I see it as shown in the application pool in the task list. But with the help of Process Explorer, I see that the EXE did not load .NET, just sat there. There are no .NET Runtime .dll files, so it seems like the request was not running.

What really sucks is that there is no real documentation for the section and the expected values ​​needed for each setting. The doAppInitAfterRestart flag is documented nowhere else I could find. I also left this with the same results. I am also not 100% syntax for the url. The MSDN article points to "/default.aspx", and I also tried this to no avail.

I also included Failed Request Tracing in IIS to see if the fake request could somehow fail, but nothing appears there. It just looks like this: site level loading does not start when the application pool restarts.

All the settings mentioned here are also available through the IIS Admin UI interface in Windows 8, and everything, of course, looks right.

I have no idea what else to check or what I might lose. Any ideas appreciated.

+8
source share
2 answers

After several additional operations, it turns out that although I installed the application initialization function using the functions of Windows 8, the actual module was not added to the globalModules list.

The following happened, and after adding everything started very well:

 <globalModules> <add name="ApplicationInitializationModule" image="%windir%\System32\inetsrv\warmup.dll" /> </globalModules> 
+5
source share

I ran into a similar problem, but after a little comparison, I found that you need to set the managed application pool mode to Integrated . It will not work with Classic Mode

+2
source share

All Articles