配置IIS支持restful风格的请求

一、环境
前端:VUE+element UI;
后端:netcore
容器:IIS

二、问题
本地调试没问题,在线上环境上请求接口时:get、post正常,但是put报服务器未响应。

三、解决
原因:IIS拒绝PUT和DELETE请求是由于IIS为网站默认注册的一个名为WebDAVModule的自定义HttpModule导致的,
如果我们的站点不需要提供针对WebDAV的支持,解决这个问题最为直接的方式就是利用如下配置将注册的HttpModule移除即可:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<remove name="WebDAVModule" />
</modules>
<handlers>
<remove name="WebDAV" />
</handlers>
</system.webServer>

也可以通过在部署Web API的网站中,移除掉WebDav模块即可:

![](https://ask.qcloudimg.com/http-save/7256485/c65rekf5tl.png?imageView2/2/w/1620)

posted @ 2021-10-22 11:40  语梦·添香  阅读(248)  评论(0)    收藏  举报