Iniciante Fundamentos
Compressão com mod_deflate
Comprimir as respostas reduz o tamanho dos dados enviados e deixa o site mais rápido. O Apache faz isso com o módulo mod_deflate, que aplica gzip no conteúdo antes de enviar.
Ativar o módulo
sudo a2enmod deflate
sudo systemctl restart apache2
Comprimir por tipo de arquivo
Comprima apenas conteúdo textual (HTML, CSS, JS). Imagens e vídeos já vêm comprimidos:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>
Verificar se está funcionando
Peça o cabeçalho Content-Encoding:
curl -I -H "Accept-Encoding: gzip" http://localhost/
Se aparecer Content-Encoding: gzip, a compressão está ativa.
Cuidados
- Não comprima imagens JPEG/PNG nem vídeos: gasta CPU sem ganho.
- A compressão usa um pouco mais de processamento em troca de menos banda.
Aplicar
sudo apache2ctl configtest
sudo systemctl reload apache2