Percebi que enviar GET /
(+CRLF) para alguns servidores da Web (por exemplo, de um provedor de pesquisa conhecido) resulta em uma HTTP/1.0 200 OK
mensagem. Outro servidor da web responde com um HTTP/1.0 400
erro.
Que eu saiba, até o HTTP/1.0 requer o campo de versão. É GET /
(sem protocolo e host) uma solicitação GET abreviada válida e padronizada?
Após algumas pesquisas, descobri que o HTTP/0.9 de 1991 define o seguinte:
- Este pedido é constituído pela palavra "GET", um espaço, o endereço do documento,[...].
- O endereço do documento consistirá em uma única palavra (ou seja, sem espaços). Se mais palavras forem encontradas na linha de solicitação, elas DEVEM ser ignoradas ou tratadas de acordo com a especificação HTTP completa
Com HTTP/0.9 a requisição parece possível. Algumas fontes o chamam de protocolo de uma linha. Não tenho certeza se isso é senso comum ou não. Eu não sabia nem vi isso antes. Os servidores da web devem honrar essa solicitação HTTP/0.9?