Parece que isso é simplesmente um bug em mod_http2
, mas foi corrigido com a versão 1.2.6:
link
Se eu habilitar H2 para meu servidor apache e especificar um cabeçalho de link pré-carregado em um documento HTML, o servidor executará um servidor H2. push porque analisa o cabeçalho do Link - até aqui tudo bem.
O problema é que esse recurso enviado é entregue sem compactação.
Eu acho que é porque um servidor push não cria uma solicitação HTTP e, portanto, o cabeçalho da solicitação accept-encoding
não é fornecido.
O problema é que não obtenho melhorias de desempenho se o cliente tiver que baixar o conteúdo descompactado.
Ainda é possível servir o conteúdo compactado? Talvez com base no cabeçalho da solicitação accept-encoding
do documento HTML?
Minha configuração do apache :
<VirtualHost *:443>
Protocols h2 http/1.1
[...]
<Location /index.html>
Header add Link "</css/all.min.css>;rel=preload;as=style"
</Location>
[...]
</VirtualHost>
Os cabeçalhos de HTML :
Solicite cabeçalhos do documento HTML
accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
accept-encoding:gzip, deflate, sdch, br
accept-language:de,en-US;q=0.8,en;q=0.6
cache-control:no-cache
Cabeçalhos de resposta do documento HTML
accept-ranges:bytes
cache-control:no-transform,public,max-age=300,s-maxage=900
content-encoding:gzip
content-length:2183
content-type:text/html
etag:"2472-5385af4b7bbda-gzip"
last-modified:Sun, 24 Jul 2016 05:29:47 GMT
link:</css/all.min.css>;rel=preload;as=style
server:Apache/2.4.18 (Debian)
status:200
vary:Accept-Encoding
Cabeçalhos de resposta de /css/all.min.css
accept-ranges:bytes
cache-control:no-transform,public,max-age=300,s-maxage=900
content-length:14237
content-type:text/css
etag:"379d-5385af4b9139b"
last-modified:Sun, 24 Jul 2016 05:29:47 GMT
server:Apache/2.4.18 (Debian)
status:200
vary:Accept-Encoding
Parece que isso é simplesmente um bug em mod_http2
, mas foi corrigido com a versão 1.2.6:
link
Eu acho que você deveria usar o mod_deflate:
Tags gzip apache-2.4 http http2