Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

IIS 7.5 Can't open Handler Mappings?

I need to update the handler mappings on IIS 7.5 to allow URLs that don't have extensions to be routed to an application. The application was originally written in ASP.NET 2.0, but then later upgraded to ASP.NET 3.5. I don't know if that has relevance, but I've had no problem updating handler mappings for other .net 3.5 apps before. I should also note that this works fine on IIS 6.0

This is the error message I get when I click the Handler Mappings link in IIS 7.5 (notice there isn't really an error message as such, which would be helpful):

Handler Mappings

There was an error while performing this operation.

Details:

Filename: \?\D:\path\to\web.config

Error:


OK

Has anyone seen this before? If you need more info, let me know and I'll supply. Thanks.

like image 577
DaveDev Avatar asked Sep 13 '10 14:09

DaveDev


People also ask

Where are IIS handler mappings stored?

This file is located in %windir%\Microsoft.NET\Framework\framework_version\CONFIG. ApplicationHost. config. This file is located in %windir%\system32\inetsrv\config.

How do I turn off Handler Mappings in IIS?

You can check this by open 'Edit Feature Permissions' and uncheck 'Script', most of the mappings are now disabled. Uncheck 'Read' and the last few enabled ones are disabled as well. This will remove the integrate ASP.NET 4 page handler, which means web forms (aspx) will no longer work.

What are IIS handler mappings?

Use the Handler Mappings feature page to manage a list of handlers that process requests for specific file types. Sort the list by clicking one of the feature page column headings or select a value from the Group by drop-down list to group similar items. Related scenarios. Build a Static Website on IIS.


3 Answers

I was having the same issue, it turns out the project used the IIS URL rewrite module (not installed by default). After I installed this, the site worked first time.

Check your web.config file (especially if it doesn't open in IIS) for any non default IIS modules.

like image 86
chillfire Avatar answered Oct 03 '22 00:10

chillfire


There's a difference in how IIS 7.0 (and higher) reads handler mappings from your Web.config file and how IIS 6 does this. It depends on the 'Managed Pipeline Mode' of your application pool. If you set it to integrated, your handler mappings are expected to be in

/system.webServer/handlers

If you use classic pipeline mode, your handlers should be in

/system.web/httpHandlers

You can find some more info here. It's probably the best idea to check what pipeline mode you're using and then check the config file manually (all the IIS management console does is edit the web.config file of you web application, so you can check what's happening behind the scenes).

like image 5
Ronald Wildenberg Avatar answered Sep 30 '22 00:09

Ronald Wildenberg


If you are using IIS7.0 / IIS7.5 : -

Goto IIS Manager by
(Start-->Run-->type 'Inetmgr' Or Right click on MyComputer, Select 'Manage' option, Expand 'Services And Applications, select 'Internet Information Manager')

Right click on the application's virtual directory, choose 'Convert To Application' option.
This will solve the issue.

like image 2
Sunil Avatar answered Oct 01 '22 00:10

Sunil