2013-11-21 117 views
4

這似乎是一個常見的問題,但我已經troubleshot所有其他技術的人越來越並沒有運氣,所以這裏有雲:IIS 7.5和Web API 2 PUT/DELETE請求

我跑WebAPI2以及Windows Server 2010上的IIS7.5。在開發過程中,我在HTTP的HTTP處理程序中添加了PUT/DELETE處理程序後,我的PUT/DELETE請求開始工作。但是,一旦我轉向刺激並應用相同的變化,我就沒有這樣的運氣。我的繼承人設置:

WebConfig

服務器:

Server

要求:

Request URL:http://dev.myserver.com/myapp/api/apps/76a09a7b-0750-4045-a3ce-696df0ff179c 
Request Method:PUT 
Status Code:405 Method Not Allowed 

405 - HTTP verb used to access this page is not allowed. 
The page you are looking for cannot be displayed because an invalid method (HTTP verb) was used to attempt access. 

響應頭:

Allow:GET, HEAD, OPTIONS, TRACE 
Content-Length:1293 
Content-Type:text/html 
Date:Thu, 21 Nov 2013 15:43:44 GMT 
Server:Microsoft-IIS/7.5 
X-Powered-By:ASP.NET 

東北角其生氣,因爲該動詞是不能接受的,但配置表明,它是。我看到另一篇文章談論如何從IIS中的模塊中刪除WebDav模塊,但是,一旦我這樣做了,我得到了500內部服務器錯誤(可能是因爲它需要嘿嘿)。就像我說的這個代碼在開發中正常工作,所以我不知道什麼是斷開連接。

+1

您是否嘗試過選擇「所有動詞」選項? –

+0

@NikolaiSamteladze是:( – amcdnl

+0

你試圖從你的''和你的''刪除'WebDavModule'?你可以發佈你的配置或者有關這個500錯誤的詳細信息。 –

回答

15

似乎如果我錯過了'HttpHandler'刪除WebDav。以下作品:

<system.webServer> 
    <modules> 
     <remove name="WebDAVModule" /> 
    </modules> 
    <handlers> 
     <remove name="WebDAV" /> 
    </handlers> 
</system.webServer> 
+1

工作就像一個魅力。保存我的尾巴。:) – napo