WebAPI 错误 404.0 - 未找到

Posted

技术标签:

【中文标题】WebAPI 错误 404.0 - 未找到【英文标题】:WebAPI Error 404.0 - Not Found 【发布时间】:2012-12-14 04:57:59 【问题描述】:

我们在将 WebAPI 服务部署到生产服务器时遇到问题。尝试访问控制器时,我们收到“您要查找的资源已被删除、名称已更改或暂时不可用。”

我们从标准 WebAPI 模板创建了一个新项目,它也有同样的问题,所以绝对不是我们的代码导致了问题。我们还有另一台与同一托管公司合作的服务器,当部署到该服务器时一切正常。服务器之间的所有 IIS 功能都是相同的。

在某个阶段,我们将应用程序池设置为 .Net Framework 2.0,而网站没有对此提出任何抱怨,因此它甚至没有尝试启动该服务。我们在同一个 Web 应用程序上也有一个 odata 服务,它运行良好。所以似乎和MVC路由和WebAPI有关。

我们将我们能想到的每个 dll 都复制到服务器上,但没有解决问题。

是否有人对导致上述错误的两台服务器之间的差异有任何想法?

提前致谢

【问题讨论】:

【参考方案1】:

试试这篇文章

HTTP Error 404.0 0 Not Found in MVC

或者这个

Running ASP.NET MVC Under IIS 6.0 and IIS 7.0 Classic Mode : Solution to Routing Problem

或尝试将以下内容添加到 Web.config:

<system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/> 
</system.webServer>

【讨论】:

谢谢。这帮助我找到了解决方案。我必须在我的 Web.config 中添加以下内容: 也为我工作【参考方案2】:

使用 OWIN 运行 WebApi 时也会显示此错误消息,并且您忘记在启动类中包含以下行:

app.UseWebApi(config);

【讨论】:

以上是关于WebAPI 错误 404.0 - 未找到的主要内容,如果未能解决你的问题,请参考以下文章

简单 MVC RoutePrefix - HTTP 错误 404.0 - 未找到

WebApi 应用程序:错误 404.0,处理程序静态文件

ASP.NET MVC 5 - (HTTP 错误 404.0 - 未找到)具有长的不存在的 URL

食人鱼 MVC HTTP 404.0 - 未找到

IIS 7.5 上的 MVC5 路由错误 (404.0) 错误

路由 HTTP 错误 404.0 0x80070002