IIS 8.0 详细错误 - 405.0 - 方法不允许
Posted
技术标签:
【中文标题】IIS 8.0 详细错误 - 405.0 - 方法不允许【英文标题】:IIS 8.0 Detailed Error - 405.0 - Method Not Allowed 【发布时间】:2013-07-13 17:05:46 【问题描述】:我只是在寻找可能导致此错误的不同原因。我在一个 Intranet 网站上工作,到目前为止没有任何问题。我正在使用 Blueimp 的 Fileupload 插件,我能够将文件上传到我的服务器没有问题。我在我的 MVC 4 应用程序中使用 WebAPI 控制器来处理文件的上传
public HttpResponseMessage Upload()
突然之间,在我的一次测试运行中,我遇到了这个错误,并且无法摆脱它。我已经尝试删除 WebADV(甚至没有安装在我的机器中)等...我这里的选项用完了,我无法追溯这个错误。
任何帮助都将不胜感激,即使它指向另一个帖子。对于帖子的含糊之处,我深表歉意,但我似乎无法追踪我的错误,因此,我有点绝望。
再次感谢!
配置:
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
【问题讨论】:
***.com/q/12807331/#comment23576850_13620659,也许?或者,您可以分享<system.webServer>
配置吗?另外,Upload()
与哪个 HTTP 动词相关联?您的 API 路由是否包含 action
占位符?而且,插件是否向/api/controller/upload
or just /api/controller
发送请求?请求是cross-origin(参考:same-origin)吗?
我将在编辑中发布我的 我通过以下方式解决了这个问题。我下载了 Ninject.WebApi.DependencyResolver。这让我可以在我的控制器工厂注册 WebApi。之后,将路径(例如“api/upload”(api/controllername))更改为“api/upload/upload”解决了这个问题!
【讨论】:
以上是关于IIS 8.0 详细错误 - 405.0 - 方法不允许的主要内容,如果未能解决你的问题,请参考以下文章
IIS7.5上的REST服务的Put操作发生HTTP Error 405.0 - Method Not Allowed 解决方法
ABP PUTDELETE请求错误405.0 - Method Not Allowed 因为使用了无效方法(HTTP 谓词) 引发客户端错误 No 'Access-Control-Allow
HTTP 错误 405.0 - 不允许使用 Jquery ajax get 的方法
WebApi 2 HttpPut,HttpDelete,HttpPost无法正常工作-HTTP错误405.0 - 方法不允许