修改日期 | 修改人 | 备注 |
2020-07-31 10:44:57[当前版本] | 陈一奇 | 其他原因... |
2020-07-31 10:43:58 | 陈一奇 | 创建版本 |
在虚拟机的IIS上部署项目的时候访问接口报405错误,接口请求方式为(PUT),试了下所有PUT请求的都无法访问,由此可知IIS应该是为允许当前请求方式,(Delete同理)
1.首先查看aspNetCore在IIS中是否限制了请求方式,经过查看并未发现不被允许的请求方式。处理程序映射=>aspNetCore
2.修改发布后的文件web.config
新增这段代码:
<modules runAllManagedModulesForAllRequests="true"> <remove name="WebDAVModule" /> </modules>
或者
<modules runAllManagedModulesForAllRequests="true" runManagedModulesForWebDavRequests="true" > <remove name="WebDAVModule" /> </modules>
3.关闭WEBDAV功能
.NET Core下dev下是没有web.config,只有发布后才生成,这就导致每次发布都要修改。 这样非常不方便。如果没有使用到WebDAV ,可以直接移除这个模块。卸载程序=》启用或关闭Windows功能=>Internet Information Service=>万维网服务=>常见HTTP功能=>WEBDAV发布。