IIS7.5 真正解决PUT、DELETE请求问题

来源:互联网 发布:天龙八部抢号软件 编辑:程序博客网 时间:2024/06/04 19:34

一、首先描述一下生成环境

       window server 2008 R2 enterprise 64位 IIS7.5

二、问题描述

       IIS10默认支持http PUT和DELETE请求,但IIS7.5默认不接收PUT、DELETE等不常见的http谓词,如何让asp.net webform或者asp.net webapi在IIS7.5上支持这些请求呢?

三、解决方案

        为了解决这个问题找了很多资料,以下为方案网址

        1、http://www.iisboy.com/iis_article/1471.html  处理模块webDAV中设置Vebs

        2、http://blog.csdn.net/huwei2003/article/details/47280289 移除webDAVModule和webDAV模块

        经验证,以上两种方法都无法解决问题,最后在stackOverFlow上的一篇文章“

        http://stackoverflow.com/questions/6739124/iis-7-5-enable-put-and-delete-for-restful-service-extensionless”评论中找到了解决方案,方案如下:

        web.config中system.webServer添加

<modules runAllManagedModulesForAllRequests="true" runManagedModulesForWebDavRequests="true" >  <remove name="WebDAVModule" /></modules><handlers>  <remove name="WebDAV" /></handlers>

         最关键的就是在modules节点增加属性runManagedModulesForWebDavRequests="true"  

          再次感谢stackoverflow

          另外补充一下,在IIS6上如果要支持PUT、DELETE请求网上有介绍说先开启webDAV扩展,再设置脚本和写权限,经验证最后会报“http 409 Conflict”的错,找了很多  资料都无法解决,还请各位指点,万分感激!

1 0