【问题标题】:IIS 7, MVC2 Web Service, HTTP 405 Error on PUTIIS 7、MVC2 Web 服务、PUT 上的 HTTP 405 错误
【发布时间】:2010-12-22 00:04:23
【问题描述】:

这是一个与IIS 7.5, Web Service and HTTP 405 error 类似的问题,但略有不同。我有一个 MVC2 Web 服务,而不是 WCF Web 服务,它在请求中使用 PUT 时返回 405 错误。而且,就我而言,POST 工作得很好。

我猜我需要添加或调整 IIS 7 处理程序映射以使 PUT 工作,但我的托管服务提供商并没有提供太多帮助。那里的任何人都遇到过这个问题并且知道如何让 PUT 在 IIS 7 中运行的 MVC2 Web 服务中工作?如果这已经得到回答,我很抱歉,我已经搜索了一整天,还没有找到神奇的答案。

任何帮助将不胜感激...

【问题讨论】:

    标签: c# web-services asp.net-mvc-2


    【解决方案1】:

    我们遇到了同样的问题,解决方案是在 Web.config 文件的部分中添加一个元素:

    <remove name="WebDAVModule"/>
    

    【讨论】:

    • 谢谢,简单而有效!有很多关于这个的帖子,这应该是他们所有人的官方答案
    【解决方案2】:

    看看https://serverfault.com/questions/93424/how-to-enable-put-and-delete-in-iis7/93428#93428

    dario-solera:

    你可以看看“处理程序 映射”部分在任一 服务器或站点级别(IIS 组)。 选择扩展的映射 (例如 .aspx)并从 上下文菜单。 “动词”选项卡 允许您指定要接受的动词。

    【讨论】:

    • 谢谢,格雷格。不幸的是,我不知道要选择什么映射。我正在使用 RESTful MVC2 Web 服务,因此实际上没有任何与 url 关联的文件扩展名。我尝试调整 ExtensionlessUrl-Integrated-4.0 映射,将 PUT 动词添加到其中,但这并没有帮助。也许我需要创建一个新的来允许 PUT?
    猜你喜欢
    • 2011-05-16
    • 2021-03-23
    • 1970-01-01
    • 1970-01-01
    • 2011-09-30
    • 1970-01-01
    • 2013-10-10
    • 2015-10-14
    • 1970-01-01
    相关资源
    最近更新 更多