505 HTTP Version Not Supported

A versão do HTTP não é suportada.

Quando usar

Raro; versões de protocolo muito antigas ou muito novas.

Causas comuns e soluções

Muito raro na prática: o servidor rejeita a versão HTTP na linha de requisição. As causas incluem uma requisição escrita à mão com um erro de digitação, como HTTP/1.2, um cliente falando HTTP/2 com um servidor que só entende HTTP/1.x, ou o contrário. O AWS ALB documenta o 505 exatamente para esse descompasso, por exemplo uma requisição HTTP/2 chegando em uma conexão que ele estabeleceu como HTTP/1.

Depure forçando uma versão com curl --http1.1 ou curl --http2 e vendo qual delas o servidor aceita, e verifique a negociação ALPN com openssl s_client -alpn h2 -connect host:443. Os navegadores negociam HTTP/2 e HTTP/3 via ALPN e Alt-Svc, então quase nunca provocam um 505. A resposta deve listar quais versões o servidor suporta.

Erro do servidor (5xx)

Os códigos 5xx são erros do servidor: a requisição pode estar certa, mas o servidor ou algo por trás dele falhou. Vale a pena configurar alertas para eles.

Como fica

HTTP/1.1 505 HTTP Version Not Supported

Como enviar

Node.js / Expressres.status(505).end()
Python / Flaskreturn '', 505
nginxreturn 505;

Como verificar

curl -s -o /dev/null -w "%{http_code}\n" https://example.com/

Abrir Códigos de status HTTP