Comment activer la compression HTTP sous apache2?

Réponses:

8

Cela nécessite le deflatemodule, alors activez-le. Sous Ubuntu (qui est ce que j'utilise), la commande pour cela est a2enmod deflate.

Ensuite, utilisez SetOutputFiltersur votre directive 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>
Sietse
la source
1
Pour les autres distributions, vous chargez le module en utilisant "LoadModule deflate_module /path/to/module/mod_deflate.so" - Juste quelques cents pour une bonne réponse.
4

Comme l'entrée Wikipedia que vous liez à des notes, vous pouvez utiliser mod_deflate ou mod_gzip . Voir ici un exemple avec mod_gzip , c'est ce que j'utilise.


la source
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
la source
1

Selon votre déploiement, placez ceci dans votre dossier conf.d ou extras en tant que 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

Redémarrez apache et mod_deflate se produira sur toutes les extensions ne correspondant pas à l'expression régulière ci-dessus, cela réduit la surcharge globale du processeur car il empêche mod_deflate d'essayer de compresser un format pour lequel vous verrez peu ou pas de compression (car il est déjà compressé).

Pour voir exactement ce qui est compressé et le taux de compression, placez-le dans votre

# 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
la source