Reputation: 157
I built a basic RESTful web service so that I can receive events. I can run this fine on local IIS, but have the following error when publishing it in IIS 10 on a server
HTTP Error 500.21 - Internal Server Error Handler "ExtensionlessUrlHandler-Integrated-4.0" has a bad module "ManagedPipelineHandler"
I set the application pool Managed Pipeline Mode to Integrated and enabled Directory Browsing in the app features. My web config looks like this:
<system.webServer>
<modules>
<remove name="UrlRoutingModule-4.0" />
<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
</modules>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
If I change the application pool Managed Pipeline Mode to "Classic" I can actually see the root site but trying to browse or call to the API gives 404s (such as xx.x.xxx.x/api/Controller/Action).
Upvotes: 7
Views: 17847
Reputation: 2929
In Windows 10 I was able to resolve this via:
Upvotes: 3
Reputation: 196
Using IIS 10 and .NET 4.6
These resolves the problem.
Upvotes: 18
Reputation: 7001
for anyone else that runs into this I installed ASP.net 4.6 on Server 2016 in add remove roles and this resolved my issue.
Upvotes: 0