ASP.NET Web API在错误的位置寻找web.config

时间:2013-03-03 22:15:30

标签: asp.net visual-studio-2012 asp.net-web-api iis-7.5

IIS 7.5正在映射路由中查找我的web.config文件,而不是在实际的文件夹位置。

实施例 C:\ inetpub \ wwwroot \ api \ thedoors \ 1< - 它在哪里看起来这不是一个目录,而是WebApiConfig类中的指定URL

应该看的地方 C:\的Inetpub] wwwroot的\此类门\

我正在使用VS 2012中的发布在本地发布到我的IIS 7.5 Web服务器。

 

应用程序“THEDOORS”中的服务器错误

Internet Information Services 7.5

     错误摘要   

HTTP错误404.0 - 未找到

  

您要查找的资源已被删除,名称已更改或暂时不可用。

        详细的错误信息              ModuleIIS Web核心     NotificationMapRequestHandler     HandlerStaticFile     错误代码0x80070002                       请求URLhttp:// localhost:80 / api / thedoors / 1     物理路径C:\ inetpub \ wwwroot \ TheDoors \ api \ thedoors \ 1     登录方法匿名     登录UserAnonymous                       最可能的原因:   
  • Web服务器上不存在指定的目录或文件。
  • URL包含打字错误。
  • 自定义过滤器或模块,例如URLScan,限制对文件的访问。
        你可以尝试的事情:   
  • 在Web服务器上创建内容。
  • 查看浏览器URL。
  • 创建跟踪规则以跟踪此HTTP状态代码的失败请求并查看哪个模块正在调用SetStatus。有关为失败的请求创建跟踪规则的更多信息,请单击here
        链接和更多信息   此错误表示服务器上不存在该文件或目录。创建文件或目录并再次尝试请求。   

View more information »

      

1 个答案:

答案 0 :(得分:0)

Benny,这不是web.config文件的虚拟位置问题。它告诉您有关web.config文件的信息不正确。它似乎无法在您的Web API正在执行的位置C:\inetpub\wwwroot\api\thedoors\web.config中找到物理web.config。你有指定位置的文件吗?

更新:我会打开IIS Managment Console并检查文件夹映射。

我刚刚创建了一个示例Web API项目并将其发布到本地IIS,但我无法重现该问题。我的文件夹映射似乎没问题。该文件夹是C:\ inetpub \ wwwroot \ sampleapi,web.config就在那里。