[APACHE] - Installation du module mod_deflate
Par neoclimb,
mardi 25 août 2009 à 14:20 ::Linux::
Apache, dans toutes les versions 1.3.x à 2.2.x, permet de mettre en place un système de compression des données avant leur envoi. Pour apache2 le module mod_deflate peut contribuer à réduire fortement la bande passante utilisée par votre site web.
Source de Pascal BOYER
Installation et paramétrage
Créer et ajouter à /etc/apache2/conf.d/mod_deflate.conf:
# ## Mod Deflate # < Location / > # Insert filter SetOutputFilter DEFLATE BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html # Don't compress images SetEnvIfNoCase Request_URI \ \.(?:gif|jpe?g|png)$ no-gzip dont-vary # Make sure proxies don't deliver the wrong content Header append Vary User-Agent env=!dont-vary < / Location >Activation des modules dans Apache2:
# a2enmod headers deflate Enabling module headers. Enabling module deflate. Run '/etc/init.d/apache2 restart' to activate new configuration!Visualiser le taux de compression dans vos fichiers de logs
Pour nous assurer de la bonne marche du module deflate, nous allons effectuer des modifications des logs dans le apache2.conf
Au niveau des lignes consacrées à la définition du format des logs produits par le serveur, ajoutez ces trois lignes:
# Contient la taille réelle du fichier avant compression DeflateFilterNote Input instream # Contient la taille du même fichier après compression DeflateFilterNote Output outstream # Contient la valeur du ratio ((Output/Input)*100) (est exprimé en %) DeflateFilterNote Ratio ratioA la ligne de la directive LogFormat, insérez ces valeurs:
%{outstream}n/%{instream}n (%{ratio}n%%)afin d'obtenir ça:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %{outstream}n/%{instream}n (%{ratio}n%%)" combinedMaintenant dans les fichiers /var/log/apache2/access.log, de telles lignes:
xx.xx.xxx.xxx - - [23/Aug/2009:06:34:28 +0200] "GET /en_index.php HTTP/1.1" 200 4470 "http://calimero.homelinux.net/" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_7; ja-jp) AppleWebKit/530.19.2 (KHTML, like Gecko) Version/4.0.2 Safari/530.19" 4452/10749 (41%)Le pourcentage à la fin de la ligne sont les informations qui nous intéressent:
39/37 (105%)Cela indiquent la taille originale du fichier est de 10749 octets, qu'une fois compressé il ne pèse plus que 4452 octets et ne représente donc plus que 41% du fichier original. Vous venez donc de réduire votre bande passante de 59% pour l'envoi de ce fichier.
Tous les fichiers ne donnent pas lieu à de telles économies de bande passante.
Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.