IIS7 HTTP/405 Method Not Allowed_PUT and DELETE me
程序员文章站
2021-12-28 21:39:09
...
问题描述:
使用WCF 4.0 开发REST服务、部署到windows 7 64位 IIS 7.5 (应用程序池选择的是ASP.NET V4.0) 上
GET、POST方式都能成功、但是PUT,DELETE报错
HTTP 错误 405.0 - Method Not Allowed 无法显示您正在查找的页面
因为使用了无效方法(HTTP 谓词)
但是如果使用VS2010 调试模式、GET、POST、PUT、DELETE都成功
这说明代码本身没有任何问题、 问题出在IIS 7.5 设置上
解决方案:
一、如果是处理程序里没有相关后缀
1.处理程序映射
2.添加脚本映射
3.请求路径:*.html
4.可执行文件:C:/windows/system32/inetsrv/asp.dll
5.请求限制-谓词:输入需要允许请求的谓词(post,get)
6.输入名字后保存
7.重启站点
二、如果处理程序有相关后缀
1.处理程序映射
2.找到脚本映射
3.如:请求路径:*.ashx
4.请求限制-谓词:输入需要允许请求的谓词(post,get)
5.输入名字后保存、如:DELETE
6.重启站点
更多方案:
我在网上找到了另外的解决方案、我没有测试过
<system.webServer> <modules> <remove name="WebDAVModule" /> </modules> <handlers> <remove name="WebDAV" /> </handlers> </system.webServer>