Pergunta:
O que significam os diferentes códigos de resposta HTTP?
Ambiente: Cisco Web Security Appliance (WSA) executando qualquer versão do AsyncOS
O HTTP sempre tem uma solicitação do cliente e uma resposta do servidor. As respostas do servidor são classificadas por um código de resposta numérico. Os códigos de resposta indicam os motivos por trás das solicitações HTTP bem-sucedidas e com falha.
Para obter informações detalhadas completas sobre os códigos de resposta HTTP, consulte RFC 2616 (HTTP), seção 10.
Abaixo estão detalhes sobre o código de resposta mais comum que você provavelmente encontrará:
Códigos 1xx: informativo
100 Continue: normalmente visto em relação ao protocolo ICAP. Esta é uma resposta informativa que permite que o cliente saiba que pode continuar a enviar dados. Em relação aos serviços ICAP (como varredura de vírus), o servidor pode querer ver somente a primeira quantidade x de bytes. Quando terminar de examinar o primeiro conjunto de bytes e não detectar um vírus, ele enviará um 100 Continue (Continuar) para informar ao cliente que deve enviar o restante do objeto.
Códigos 2xx: Êxito
200 OK: O código de resposta mais comum. Isso significa que a solicitação foi bem-sucedida sem problemas.
Códigos 3xx: redirecionamento
302 Encontrado: este é um redirecionamento temporário. O cliente é instruído a fazer uma nova solicitação para o objeto especificado no cabeçalho Location:.
304 Não Modificado: Isto é em resposta a um GIMS (GET If-modified-since). Este é literalmente um HTTP GET padrão que inclui o cabeçalho If-modified-since: <date>. Esse cabeçalho informa ao servidor que o cliente tem uma cópia do objeto solicitado em seu cache local e que a data em que o objeto foi buscado está incluída. Se o objeto tiver sido modificado desde essa data, o servidor responderá com 200 OK e uma cópia nova do objeto. Se o objeto não tiver sido alterado desde a data de busca, o servidor enviará de volta uma resposta 304 Não modificado.
307 Redirecionamento Temporário: Para todas as finalidades, tem o mesmo significado que 302. Se forem descobertos mais detalhes, este artigo pode ser atualizado.
Códigos 4xx: erro do cliente
400 Solicitação Incorreta: Isso significa que algo na solicitação HTTP não está seguindo a sintaxe correta. As possíveis causas podem ser devido a vários cabeçalhos estarem na mesma linha, espaços em um cabeçalho, sem HTTP/1.1 no URI, etc. RFC 2616 deve ser referenciado para obter a sintaxe apropriada.
401 Não autorizado: o objeto solicitado requer autenticação para ser acessado. O 401 é usado para autenticação em um servidor Web de destino. Ao usar o Cisco Web Security Appliance (WSA) no modo transparente, um 401 é enviado de volta ao cliente quando a autenticação é habilitada no proxy. Isso ocorre porque o dispositivo está se falsificando como se fosse o OCS (servidor de conteúdo de origem).
Os métodos de autenticação disponíveis são especificados em um cabeçalho de resposta www-authenticate: HTTP. Isso informará ao cliente se este servidor está solicitando ou não NTLM, básico ou outros métodos de autenticação.
403 Proibido: o cliente não pode acessar o objeto solicitado. Há muitas causas para o motivo pelo qual um servidor pode negar acesso a um objeto. Normalmente, o servidor incluirá algum tipo de descrição da causa nos dados HTTP (resposta HTML).
404 Não Encontrado: O objeto solicitado não existe no servidor.
407 Autenticação de proxy necessária: é igual a um 401, exceto que é especificamente para autenticação em um proxy, não no OCS. Isso será enviado somente se a solicitação tiver sido enviada explicitamente ao proxy. Um 407 não pode ser enviado a um cliente enquanto estiver usando o WSA como proxy transparente, pois o cliente não sabe que o proxy existe. Se esse for o caso, o cliente provavelmente usará FIN ou RST no soquete TCP.
Em vez de usar os cabeçalhos www-authenticate: para especificar quais métodos de autenticação estão disponíveis, o cabeçalho proxy-authenticate: é usado.
Códigos 5xx: erro do servidor
500 Erro Interno do Servidor: falha do servidor genérico
502 Gateway incorreto: Normalmente você verá isso ao usar o WSA como um proxy, onde o gateway está respondendo incorretamente.
Serviço 503 indisponível: geralmente enviado quando o OCS está sobrecarregado. A tentativa de solicitação novamente mais tarde deve ser bem-sucedida.
Tempo limite do gateway 504: um 504 será enviado se o WSA não tiver recebido uma resposta de seu gateway.