Por que o Microsoft-HTTPAPI está retornando o 404 ao My Network Switch?

2

As solicitações do cliente (IE) para uma página keep_alive de html estático parecem estar funcionando bem, mas o comutador de rede que faz o balanceamento de carga parece não solicitar a mesma página ao usar o mesmo URL EXATO. As entradas de log HTTPERR vindas do switch fornecem 404-NotFound - . Obviamente não está chegando ao IIS, mas por que o HTTPAPI estaria rejeitando isso? Onde posso ver o código de razão ou mensagem de erro ou algo assim? Por favor ajude: |

Trecho de HTTPERR: solicitações com falha do switch de rede (IP removido)

2013-02-14 18:34:55 X.X.X.X 38676 X.X.X.X 80 HTTP/1.1 HEAD /keep_alive.html 404 - NotFound -

Isso é repetido a cada poucos segundos quando o switch tenta acessar a página.

Quadros de rede capturados da minha solução de problemas:

NETWORK SWITCH

- HTTP: Request, HEAD /keep_alive.html 
    Command: HEAD
  - URI: /keep_alive.html
     Location: /keep_alive.html 
    ProtocolVersion: HTTP/1.1
    Host:  X.X.X.X
    Connection:  Close
    HeaderEnd: CRLF

- HTTP: Response, HTTP/1.1, Status: Not found, URL: 
    ProtocolVersion: HTTP/1.1
    StatusCode: 404, Not found
    Reason: Not Found
    ContentLength:  315
  - ContentType:  text/html; charset=us-ascii
   + MediaType:  text/html; charset=us-ascii
    Server:  Microsoft-HTTPAPI/2.0
    Date:  Fri, 15 Feb 2013 16:52:52 GMT
    Connection:  close
    HeaderEnd: CRLF

DESKTOP

- HTTP: Request, GET /keep_alive.html 
    Command: GET
  - URI: /keep_alive.html
     Location: /keep_alive.html 
    ProtocolVersion: HTTP/1.1
    Accept:  application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
    Accept-Language:  en-US
    UserAgent:  Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET CLR 1.1.4322; .NET4.0C; .NET4.0E)
    Accept-Encoding:  gzip, deflate
    Host:  X.X.X.X
    Connection:  Keep-Alive
  - Cookie:  ...  

- Http: Response, HTTP/1.1, Status: Ok, URL: /keep_alive.html 
    ProtocolVersion: HTTP/1.1
    StatusCode: 200, Ok
    Reason: OK
  - ContentType:  text/html
     MediaType:  text/html
    ContentEncoding:  gzip
    Last-Modified:  Fri, 26 Feb 2010 05:11:00 GMT
    Accept-Ranges:  bytes
    ETag:  "0aca15a2b6ca1:0"
    Vary:  Accept-Encoding
    Server:  Microsoft-IIS/7.5
    XPoweredBy:  ASP.NET
    Date:  Fri, 15 Feb 2013 17:15:13 GMT
    ContentLength:  1514
    HeaderEnd: CRLF
  - payload: HttpContentType =  text/html
     HtmlElement: ...
    
por NickSuperb 15.02.2013 / 18:27

1 resposta

1

Encontrou uma resolução.

O problema estava na configuração de ligação no IIS. O switch de rede gera uma solicitação com base no endereço IP . No quadro de solicitação do switch de rede (como visto acima), você notará que o valor Host está sendo passado como endereço IP. Uma falta de ligação apropriada aparentemente retorna um 404 dessa natureza apenas no log HTTPERR. Nossa configuração do IIS continha apenas uma ligação para o nome DNS.

TL; DR

Verifique se as ligações do IIS contêm uma entrada para IP & DNS ou você terá um mau momento.

    
por 15.02.2013 / 21:08