Índice
Um dos métodos mais eficazes para reduzir o uso de banda pelo servidor web e, ao mesmo tempo, aumentar a velocidade de entrega de conteúdo é comprimir as páginas web e, em geral, todos os resultados que são devolvidos aos clientes. A compactação do conteúdo da web pode ser feita usando vários métodos.O que é o módulo mod_deflate?
O módulo mod_deflate do Apache permite que o servidor entregue arquivos compactados em tempo real. Geralmente é utilizado para melhorar o desempenho de um site, no sentido de menor tempo de download para o visitante.
Quando uma solicitação é feita a um site, o Apache prepara a resposta que será enviada ao visitante em várias etapas. Uma das etapas consiste em modificar ou transformar os dados usando filtros de saída. O módulo mod_deflate, uma vez carregado e ativado, é inserido como um filtro, denominado DEFLATE, na cadeia de filtros de saída do Apache, que comprime todos os dados que passam por ele.
Por exemplo, você pode definir o nível de compactação, restringir a compactação a determinados tipos de MIME ou impedir que alguns navegadores da web, visitantes ou outros problemas de HTTP recebam dados compactados do servidor.
O módulo mod_deflate também oferece um filtro de entrada que pode ser usado para descompactar os dados compactados em solicitações HTTP.
O processo de configuração que iremos desenvolver pode ser inserido no contexto do servidor Apache principal ou pode ser salvo em um arquivo que será carregado desde o servidor principal ou na configuração de um host virtual.
Ative o módulo mod_deflate
mod_deflate pode ser ativado como qualquer outro módulo Apache do arquivo /etc/httpd/conf/httpd.conf
LoadModule deflate_module modules / mod_deflate.so
Observe que esta diretiva só pode existir na configuração do servidor principal.
Permitir compressão
A compactação de dados pode ser habilitada para todos os dados que passam pelo filtro DEFLATE ou dependendo dos tipos MIME selecionados.
Para habilitar a compressão para qualquer tipo de conteúdo, devemos introduzir a seguinte diretiva:
SetOutputFilter DEFLATE
Como alternativa, você pode especificar o tipo de arquivo que deseja compactar do filtro de saída DEFLATE da diretiva AddOutputFilterByType. Veja os seguintes exemplos:
texto AddOutputFilterByType DEFLATE / plain AddOutputFilterByType texto DEFLATE / html AddOutputFilterByType DEFLATE text / xml AddOutputFilterByType DEFLATE text / css AddOutputFilterByType DEFLATE application / xml aplicação AddOutputFilterByType DEFLATE / xhtml + xml AddOutputFilterByType aplicação DEFLATE / rss + xml AddOutputFilterByType DEFLATE application / javascript AddOutputFilterByType DEFLATE application / x javascript
Ajuste o nível de compressão
Em geral, o algoritmo de compressão deflate é rápido o suficiente, portanto, definir o nível de compressão para o máximo (9) não causará nenhum problema perceptível, mesmo em hardware relativamente antigo.
DeflateCompressionLevel 9
Regras personalizadas para navegadores problemáticos
A compactação pode ser ativada ou desativada para tipos de texto / html para navegadores que podem causar problemas ou simplesmente restringir a compreensão.
BrowserMatch Mozilla / 4 gzip-only-text / html BrowserMatch Mozilla / 4.0 [678] no-gzip BrowserMatch bMSIE! No-gzip! Gzip-only-text / html
Benefícios de compressão
O algoritmo de deflate pode comprimir texto muito rápido e com uma taxa de eficiência muito alta. Por outro lado, é quase inútil quando se utiliza para comprimir imagens que foram preparadas para a web, como PNG, JPEG.webp, GIF.webp e em geral todos os outros tipos de imagens em que os dados já foram comprimidos. O mesmo vale para arquivos de áudio compactados, como MP3s, vídeos, documentos PDF e todos os outros arquivos já compactados.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo