Como habilito a compactação HTTP no apache2?


Respostas:


8

Isso requer o deflatemódulo, então habilite isso. No Ubuntu (que é o que eu estou usando), o comando para isso é a2enmod deflate.

Em seguida, use SetOutputFilterna sua diretiva Proxyou Directory:

<ProxyMatch "^http://localhost:8080/($|app/)">
    Order allow,deny
    Allow from all
    SetOutputFilter Deflate
</ProxyMatch>

Ou:

<Directory /var/www>
    Order allow,deny
    Allow from all
    SetOutputFilter Deflate
</Directory>

11
Para outras distros, você carrega o módulo usando "LoadModule deflate_module /path/to/module/mod_deflate.so" - apenas alguns centavos para uma boa resposta.

4

Como entrada da Wikipedia que você vincula às notas, você pode usar mod_deflate ou mod_gzip . Veja aqui um exemplo com mod_gzip , que é o que eu uso.


1
<VirtualHost *:80>
   ...     
   DeflateBufferSize 16384
   DeflateCompressionLevel 5
   DeflateMemLevel 9
   DeflateWindowSize 15

   <Location / >
      AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/x-javascript
   </Location>
   ...
</VirtualHost>

1

Dependendo da sua implantação, coloque-o na pasta conf.d ou extras como mod_deflate.conf:

# Enable mod_deflate (gzip)
    SetOutputFilter DEFLATE
    # Do not attempt to compress the following extensions
    SetEnvIfNoCase Request_URI \
    \.(?:gif|jpe?g|png|swf|flv|zip|gz|tar|mp3|mp4|m4v)$ no-gzip dont-vary

Reinicie o apache e mod_deflate ocorrerá em todas as extensões que não correspondem ao regex acima, isso reduz a sobrecarga geral da CPU, pois evita que o mod_deflate tente compactar um formato pelo qual você verá pouca ou nenhuma compactação (porque já está compactado).

Para ver exatamente o que está sendo compactado e a taxa de compactação, coloque-o no seu

# Deflate accurate logging
    DeflateFilterNote Input instream
    DeflateFilterNote Output outstream
    DeflateFilterNote Ratio ratio
    LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate
    CustomLog logs/yourdomain_deflate.log
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.