尝试访问IIS中托管的应用程序时出现“无法找到资源”错误

时间:2013-06-11 06:53:51

标签: c# asp.net iis-7.5

我的ASP.NET应用程序使用Windows身份验证。我在IIS中托管了该应用程序,并尝试从同一服务器访问该应用程序。我能够无错误地访问应用程序。但是当我尝试在服务器外部访问相同的应用程序时,我收到以下错误:

  

无法找到资源。描述:HTTP 404.资源你   正在寻找(或其中一个依赖)可能已被删除,   更改名称,或暂时不可用。请查阅   以下URL并确保拼写正确。

     

请求的网址:/FacetsUserSetupApp/home.aspx

令人惊讶的是,我有时会收到此错误。其他时候工作正常。我不确定这种行为是如何发生的。

发生错误时,IIS跟踪日志会显示以下消息:

  

2013-06-10 15:14:32 10.0.40.168 GET /FacetsUserSetupApp/Home.aspx - 80    - 10.4.43.41 Mozilla / 4.0 +(兼容; + MSIE + 7.0; + Windows + NT + 5.1; +。NET + CLR + 1.1.4322; +。NET + CLR + 2.0.50727; +。NET + CLR + 3.0 .04506.648; + NET + CLR + 3.5.21022; + NET + CLR + 3.0.4506.2152; + NET + CLR + 3.5.30729; + InfoPath.3; + MS-RTC + LM + 8; + NET4 .0C; + NET4.0E; + MS-RTC + LM + 8)   401 2 5 140

     

2013-06-10 15:14:33 :: 1 POST /FacetsUserSetupService/Service1.svc - 80    - :: 1 - 200 0 0 781

     

2013-06-10 15:14:33 :: 1 POST /FacetsUserSetupService/Service1.svc - 80    - :: 1 - 200 0 0 15

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:2)

您似乎获得了401.2状态代码:

  

HTTP 401.2:服务器配置拒绝

     

<强>描述

     

客户端浏览器和IIS无法就身份验证达成一致   协议

     

常见原因

     
      
  • 在IIS中未选择身份验证协议(包括匿名)。必须至少选择一种身份验证类型。更多   信息,请单击以下文章编号以查看该文章   Microsoft知识库:

         

    253667错误消息:HTTP 401.2 - 未经授权:由于服务器配置登录失败   没有身份验证

  •   
  • 仅启用集成身份验证,并且较旧的非Internet Explorer客户端浏览器尝试访问该站点。这个   发生的原因是客户端浏览器无法执行集成   认证。若要解决此问题,请使用以下之一   方法:

         
        
    • 配置IIS以接受基本身份验证。出于安全考虑,这应仅通过SSL进行。
    •   
    • 使用可以执行集成身份验证的客户端浏览器。 Internet Explorer和Netscape Navigator和Mozilla的新版本   Firefox可以执行集成身份验证。
    •   
  •   
  • 集成身份验证通过代理。发生这种情况是因为代理不维护NTLM身份验证的连接   因此从客户端向服务器发送匿名请求。   解决此问题的选项如下:   
        
    • 配置IIS以接受基本身份验证。出于安全考虑,这应仅通过SSL进行。
    •   
    • 请勿使用代理。
    •   
  •   

可能是因为代理问题而发生。

另外,为了确保一切配置正确,请查看以下故障排除/配置链接: