ASP.NET (Core) WebAPI IIS PUT和DELETE请求失败 405的解决办法

2020-06-03 16:10:13 浏览数 (1)

本地调试没问题,在线上环境上IIIS拒绝PUT和DELETE请求是由于IIS为网站默认注册的一个名为WebDAVModule的自定义HttpModule导致的,如果我们的站点不需要提供针对WebDAV的支持,解决这个问题最为直接的方式就是利用如下配置将注册的HttpModule移除即可:

代码语言:javascript复制
1 <system.webServer> 
2   <modules runAllManagedModulesForAllRequests="true"> 
3     <remove name="WebDAVModule" /> 
4   </modules> 
5   <handlers>
6      <remove name="WebDAV" />
7   </handlers>
8 </system.webServer> 

  除了以上方法还可以通过在部署Web API的网站中,移除掉WebDav模块即可:

还可以通过在卸载WebDav发布:

0 人点赞