2015-11-20 32 views
1

我在.Net中有一个restfull web服务。当我们使用Windows 7和IIS 7在PC上测试PUT时,它工作正常。在IIS 8.5中不允许PUT:错误405

当我们使用Windows 8和IIS 8.5在PC上测试Web服务时,我们得到了405状态码。这是提琴手

enter image description here

编辑 结果这是关于ExtensionlessUrlHandler-Integrated的的applicationHost.config部分。我没有一个ExtensionlessUrl集成

enter image description here

我想这是一个IIS的问题,任何人都知道如何解决这个问题? 在此先感谢

回答

4

您必须在您的ExtensionlessUrl-Integrated-4.0列表中添加PUT动词。进行以下更改您的IIS实例的applicationhost.config文件。

<add name="ExtensionlessUrl-Integrated-4.0" path="*." verb="GET,HEAD,POST,PUT,OPTIONS,TRACE" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" responseBufferLimit="0" /> 

你也想加入你可能会允许像删除任何其他动词。

请参见:ASP.NET Web API - PUT & DELETE Verbs Not Allowed - IIS 8

+0

这里应该是文件?我在该PC中有4个文件,名为applicationhost.config –

+0

这取决于你的配置,但默认情况下它位于C:\ Windows \ System32 \ inetsrv \ config – Xipooo

+0

找到它,有一个ExtensionlessUrlHandler-Integrated-4.0,相同的结果。 –

相关问题