如何在IIS 10上承载ASP.NET Web API 2项目

TJ *_*ler 3 asp.net iis rest

我正在尝试在IIS 10上托管ASP.NET Web API 2项目,并且我不断收到一个页面,说找不到Service Endpoint.

我用于测试的项目是ASP.NET Web API 2入门中的示例ProductsApp项目.如果我在调试中运行该项目,那么当它通过VS2012 IIS express在localhost上托管时,页面会按预期显示:54170

然后我使用VS2012将该项目发布到文件.

发布到文件后,我在IIS 10上的localhost:8080上创建了一个新站点,并指向我发布ProductsApp项目的文件夹的物理路径.

此时,如果我去浏览网站,它会出现一个页面,其中所说的是未找到服务端点.

我已将DefaultAppPool标识更改为LocalSystem,因此我认为这不是权限问题.

如何在我从VS2012调试时从IIS 10调试网站?

TJ *_*ler 7

我昨天浪费了很多时间试图解决这个问题,但今天早上有点小小的变化我发现了我的答案,我很惊讶我无法找到其他任何我看过的东西.

要解决我的问题,这就是我必须做的.

  1. 而不是将ASP.NET内容作为自己的站点托管,我只需要将应用程序添加到我的默认网站,其物理路径指向从VS2012发布的文件夹.

  2. 这显然是我第一次使用ASP.NET,因此我没有在IIS中安装任何ASP.NET功能.我打开或关闭了Windows功能 - > Internet信息服务 - >万维网服务 - >应用程序开发功能,然后选择了所有的ASP文件夹(ASP,ASP.NET 3.5,ASP.NET 4.6).编辑: 回顾一下,所需要的只是启用ASP.NET 4.6功能.当时我不知道我在寻找什么,所以我尝试通过在名称中安装"ASP"来解决问题.

  3. DefaultAppPool Identity不需要更改为LocalSystem,因此我将其更改回ApplicationPoolIdentity.

现在我已经在我的localhost上启动并运行了ASP.NET站点.