我正在使用.Net Web API,它在調試以及本地主機IIS上正常工作,但是當我將它發佈到服務器時,它開始提供以下錯誤: -
「消息」:「沒有HTTP資源發現匹配的請求URI.Net Web API沒有找到與請求URI相匹配的HTTP資源
在服務器上,我們在此API默認的站點應用程序文件夾,但它在本地IIS的默認網站,這樣工作正常應用程序文件夾應該不是問題
現在我試着在處理程序中設置正確的動詞,如下面的url中指定的,但沒有工作:
HTTP 404 Page Not Found in Web Api hosted in IIS 7.5
我也有安裝在服務器上MVC4以下網址的建議:
.NET Web Api - 404 - File or directory not found
同樣的WebDav模塊,處理器可能會錯誤,所以我也試着刪除它,但它給同樣的錯誤。
這裏是一個模塊,處理器設置的Web.config部分: -
<modules runAllManagedModulesForAllRequests="true" />
<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="*" 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="*" 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="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
我不隨地路線玩。我是否缺少關於web.config或服務器IIS中的設置/配置的信息?
所有的HTTP方法都會給你這個錯誤,基本上是任何路由,或者只有特定的動詞(例如,PUT和DELETE)?您是否嘗試過經典/集成模式(IIS)? – 2013-04-24 19:48:11
是的所有的HTTP方法都出現這個錯誤。我在IIS 7.5中使用集成模式。 – user621504 2013-04-25 01:47:26
您是否解決了這個問題?我現在有相同的... – Slauma 2013-05-28 18:04:47