IIS 6.0 下部署 Asp.net MVC Web Api 后 HTTP PUT and DELETE 请求失败的问题

ASP.NET MVC 4 has a new feature called WebAPI which makes it much easier to create a REST API in ASP.NET. Unfortunately, I ran into one problem with IIS 6.0 that prevented the full REST spec from being used. By default IIS 6 wouldn’t allow the PUT or DELETE verbs to be used with the WebAPI app that we created.

Page requests using GET and POST worked fine, but PUT and DELETE gave the following error:

Failed to load resource: the server responded with a status of 501 (Not Implemented)

In order to solve the issue I needed to add the ASP.NET 4.0 dll to the Wildcard mappings in the Configuration area on the Home Directory tab for the website. That fixed the problem for me. Here are the steps that I took to correct the issue in IIS.

1. Find the web site in the “Web Sites” folder in Internet Information Services (IIS) and right-click and select properties.


2. Go to the “Home Directory” tab and click the “Configuration…” button.


3. Find the .aspx extension in the “Application extensions” table, select it and press the “Edit…” button.


4. Copy the entire path and file name in the “Executable:” text box to the clipboard.  Press the “Cancel” button.


5. Press the “Insert…” button near the “Wildcard application maps” list box.  Paste the text from the clipboard into the “Executable:” text box and press “OK”.


6. Press OK on the Application Configuration dialog and again on the website properties box.

此条目发表在学习笔记分类目录，贴了, 标签。将固定链接加入收藏夹。

4 则回应给 IIS 6.0 下部署 Asp.net MVC Web Api 后 HTTP PUT and DELETE 请求失败的问题

  1. 钱康说：

    iis6.0 下按此步骤 ，没有作用，delete 操作还是不可以，是不是还应该配置delete put的访问权限呢？

  2. 猫眼看世界网友说：


  3. 任务易说：