由于测试阶段使用的是IIS express ,所以当把项目发布到IIS的时候,发现了一个坑,
WHAT? PUT和DELETE请求报错405。然后查阅了相关问题资料,解决方案如下:
- 删除IIS模块中的 WebDav模块,
2.找到配置文件C:\Windows\System32\inetsrv\config\applicationhost.config
注意:这个文件不能直接打开,我是右键Notepad++打开的;
3.找到handlers标记,该标记下有所有模块的配置,修改修改对应模块的允许谓词即可,我们把PUT和DELETE添加进去
<add name="SimpleHandlerFactory-ISAPI-4.0_64bit" path="*.ashx" verb="GET,HEAD,POST,DEBUG,PUT,DELETE" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
ok,现在站点支持PUT和DELETE请求了。