¿Cómo habilito la compresión HTTP en apache2?

Respuestas:

8

Esto requiere el deflatemódulo, así que habilítelo. En Ubuntu (que es lo que estoy usando), el comando para eso es a2enmod deflate.

Luego, use SetOutputFilteren su Proxyo Directorydirectiva:

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

O:

<Directory /var/www>
    Order allow,deny
    Allow from all
    SetOutputFilter Deflate
</Directory>
Sietse
fuente
1
Para otras distribuciones, carga el módulo utilizando "LoadModule deflate_module /path/to/module/mod_deflate.so": solo un par de centavos para una buena respuesta.
4

Como la entrada de Wikipedia que vincula a las notas, puede usar mod_deflate o mod_gzip . Vea aquí un ejemplo con mod_gzip , que es lo que uso.


fuente
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>
Dave Cheney
fuente
1

Dependiendo de su implementación, coloque esto en su carpeta conf.d o 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

Reiniciar apache y mod_deflate se producirán en todas las extensiones que no coincidan con la expresión regular anterior, esto reduce la sobrecarga general de la CPU ya que evita que mod_deflate intente comprimir un formato en el que verá poca o ninguna compresión (porque ya está comprimido).

Para ver qué se está comprimiendo exactamente y la relación de compresión, colóquelo en su

# 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
Oneiroi
fuente