I have an ASP.NET application that I am trying to convert to an ASP.NET 4 application. The application is fairly simple. I have created a new web application in IIS 7.5 pointing to the directory that the ASP.NET application exists in.

When I attempt to execute the application, but entering http://localhost:[port] into my browser, I receive the following error:

Error Summary
HTTP Error 500.21 - Internal Server Error Handler "PageHandlerFactory-Integrated" has a bad module "ManagedPipelineHandler" in its module list

Most likely causes:

  • Managed handler is used; however, ASP.NET is not installed or is not installed completely.
  • There is a typographical error in the configuration for the handler module list.

6 Answers 6


I have the same problem when try publishing SL App using VS2010 although there is no prob before with .NET 3.5SP1 and VS2008.

So try run this (%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i) as described here forums.iis.net/t/1149449.aspx and here www.gotknowhow.com/articles/fix-bad-module-managedpipelinehandler-in-iis7 and It works now. So the problem is ASp>NET 4.0 has not properly installed, huuu... :)

  • 1
    works for me! I installed VS and IIS in the wrong order (VS first), then you end up in this situation
    – chris166
    Jul 13, 2010 at 12:19

the "aspnet_regiis.exe -i" trick worked for me.


I ended up having to re-install the .NET 4 framework.


In IIS Manager, under Sites, find your directory(Web Page) and Convert to Application. Select a valid Application Pool(or create a new one), which uses .NET v.2 or above. Restart IIS. You are done.


2 things to check:

1) Did you install the .NET 4.0 bits on the box?

2) Is the site in question set to use ASP.NET 4.0?


This worked for me http://blogs.msdn.com/b/amol/archive/2009/03/31/aspx-pages-not-getting-served-on-iis-7.aspx

Resolution: Add global modules section in applicationHost.config

<add name="ManagedEngine" image="%windir%\Microsoft.NET\Framework\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness32" />

for 64 bit
<add name="ManagedEngine64" image="%windir%\Microsoft.NET\Framework64\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness64" />

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .