我正在使用.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