在新的服务器上部署了一个.net core的项目,部分请求地址使用了put、delete方式,导致无法正常请求,报Error 405 - Method Not Allowed。

由于配置IIS时把“WebDAV 发布”给勾选了,所以会导致拦截。

服务器和IIS 10配置如下图:

IIS PUT请求.netcore6.0接口 报HTTP Error 405 - Method Not Allowed_IIS

解决方案

服务器上删除“WebDAV 发布”

1、打开“控制面板”=》“程序和功能”

IIS PUT请求.netcore6.0接口 报HTTP Error 405 - Method Not Allowed_IIS_02

2、点击“启用或关闭windows 功能”

IIS PUT请求.netcore6.0接口 报HTTP Error 405 - Method Not Allowed_IIS_03

3、在服务器管理器中,找到“管理”=》“删除角色和功能”

IIS PUT请求.netcore6.0接口 报HTTP Error 405 - Method Not Allowed_重启_04

4、在“删除角色和功能向导”=》一步步往下走,找到“服务器角色”=》“web服务器(IIS)”=》“Web服务器”=》“常见HTTP功能”=》“WebDAV发布”,勾选去掉,然后继续点击下去。

IIS PUT请求.netcore6.0接口 报HTTP Error 405 - Method Not Allowed_重启_05

5、最后重启服务器即可。