如何使IIS支持Put、delete请求
最近因为项目发布及部署,经常遇到IIS不支持项目中PUT和delete的请求,现记录下来以防忘记。
0、问题描述:一般IIS不支持PUT和Delete请求的时候,都会报405或500的错误,如下:
一、部署环境:IIS 8.5
如果不知道版本号的,可打开IIS查看版本号:
二、问题原因分析:在默认情况下,IIS会安装一个WebDav模块,而这个模块阻止了HTTP的PUT和Delete请求。
三、解决方案:
①删除IIS安装的WebDav模块,选择你的项目,右边有个“模块”,双击它;找到WebDavModule,删除它。
②修改你项目的web.config ,在<system.webServer>标签内加上以下代码。
<modules runAllManagedModulesForAllRequests="true" runManagedModulesForWebDavRequests="true">
<remove name="WebDAVModule"/>
</modules>
<handlers>
<remove name="WebDAV" />
</handlers>