WebApi应用程序:错误404.0,处理程序StaticFile

Ale*_*der 8 .net c# asp.net iis asp.net-web-api

我刚刚尝试在带有IIS 7.0的Windows 2008R2上部署WebApi应用程序,直到现在IIS操作系统都未触及.

该应用程序在我们的开发服务器(相同的Win和IIS版本)上运行,没有麻烦.在部署服务器上

  • 安装了.NET Framework 4.5,
  • ASP.NET功能已安装和
  • 已安装Windows身份验证

当我调用应映射到ASP.NET的URL时,错误是

      HTTP Error 404.0

       Module IIS Web Code
 Notification MapRequestHandler
      Handler StaticFile
   Error code 0x80070002
Requested URL http://localhost:80/myapp/api/GetUserConfig
Physical Path C:\inetpub\wwwroot\myapp\api\GetUserConfig
 Logon Method Negotiate
   Logon User ADDOMAIN\Administrator
Run Code Online (Sandbox Code Playgroud)

Handler StaticFile似乎很重要 - 据我所知,原因是ASP.NET没有正确处理URL.我在哪里可以开始搜索此问题的实际根源?

我应该补充说,在Windows 2012环境中,多个其他部署都是成功的.

Ale*_*der 1

微软绝对应该在安装程序中添加一个“ASP.NET”功能的版本。

当您在 Windows 2008 上安装 ASP.NET 功能时,这会启用 ASP.NET 3.5,而我需要 ASP.NET 4。

因此,在安装 .NET Framework v4 后,我将继续向 IIS 注册 ASP.NET 4:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319> .\aspnet_regiis.exe -i 
Run Code Online (Sandbox Code Playgroud)

来源:

https://alexanderzeitler.com/articles/HTTP-Error-4040---Not-Found-(MapRequestHandler--StaticFile)-when-deploying-WCF-Web-API-on-IIS-7x/