É correto que o Nginx relate códigos de status HTTP / 1.1 com SPDY (3.1)?

1

Perguntas

  • Preciso ver os cabeçalhos de resposta como X-Firefox-Spdy para determinar qual protocolo foi realmente usado?
  • Posso supor que o Nginx irá relatar códigos de status HTTP / 2 quando a implementação for finalizada, porque isso é um comportamento esperado ou há algo sobre códigos de status que eu não sei?

Informações encontradas ao compor esta pergunta:

Investigação e detalhes

No momento, estou examinando a configuração do meu servidor e estou um pouco confuso sobre os códigos de status http que vejo no console do desenvolvedor do meu navegador.

Meu servidor executa o Ubuntu 14.04 com uma versão atualizada do Nginx ( PPA ). O Nginx está configurado para usar o SPDY e um certificado autoassinado. Eu acho que o SPDY está configurado corretamente desde que o teste Qualys SSL Labs informou que o servidor oferece o SPDY 3.1 (e é claro que há uma infinidade de plugins de navegador), mas é HTTP/1.1 200 correto?

Aqui está o pedido completo do meu servidor:

Request-URL:    https://myserver/lib/dojo/something.js?123456789

Request-Methode:    GET
Status-Code:    HTTP/1.1 200 OK
Request-Header 13:50:30.000
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:40.0) Gecko/20100101 Firefox/40.0
Referer:    https://myserver/index.php
Pragma: no-cache
Host:   myserver
DNT:    1
Connection: keep-alive
Cache-Control:  no-cache
Accept-Language:    de-DE,en-US;q=0.8,de;q=0.5,en;q=0.3
Accept-Encoding:    gzip, deflate
Accept: */*

Sent Cookie
-xxx-

Response-Header Δ1ms
X-Firefox-Spdy: 3.1
Strict-Transport-Security:  max-age=15768000; includeSubDomains
Server: nginx/1.9.3
Last-Modified:  Tue, 08 Sep 2015 08:46:10 GMT
Expires:    Thu, 31 Dec 2037 23:55:55 GMT
Etag:   "-xxx-"
Date:   Sat, 12 Sep 2015 11:50:30 GMT
Content-Type:   application/javascript
Content-Length: 435035
Cache-Control:  max-age=315360000
Accept-Ranges:  bytes

Aqui está uma solicitação para um relatório de recurso externo HTTP/2.0 200 :

Request-URL:    https://fonts.googleapis.com/css?family=Ubuntu
Request-Methode:    GET
Status-Code:    HTTP/2.0 200 OK
Request-Header 13:50:31.000
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:40.0) Gecko/20100101 Firefox/40.0
Referer:    https://myserver/index.php
Pragma: no-cache
Host:   fonts.googleapis.com
DNT:    1
Connection: keep-alive
Cache-Control:  no-cache
Accept-Language:    de-DE,en-US;q=0.8,de;q=0.5,en;q=0.3
Accept-Encoding:    gzip, deflate
Accept: text/css,*/*;q=0.1

Response-Header Δ87ms
X-XSS-Protection:   1; mode=block
X-Frame-Options:    SAMEORIGIN
X-Firefox-Spdy: h2
X-Content-Type-Options: nosniff
Timing-Allow-Origin:    *
Server: GSE
Expires:    Sat, 12 Sep 2015 11:50:31 GMT
Date:   Sat, 12 Sep 2015 11:50:31 GMT
Content-Type:   text/css
Content-Length: 308
Content-Encoding:   gzip
Cache-Control:  private, max-age=86400
alternate-protocol: 443:quic,p=1
Alt-Svc:    quic=":443"; p="1"; ma=604800
access-control-allow-origin:    *

Eu li este anúncio Como o NGINX planeja oferecer suporte ao HTTP / 2 , o que me ajudou a entender por que ainda posso ver solicitações sendo feitas para aplicativos com HTTP / 1.1. No entanto, eu mesmo não compilei o Nginx com o patch e não saberia o que procurar na fonte, mas meu palpite é que o Nginx pre-HTTP / 2 apenas informa HTTP/1.1 códigos de status, mesmo que use SPDY enquanto outro software (como o GSE) pode se comportar de maneira diferente.

    
por LiveWireBT 12.09.2015 / 15:37

0 respostas