Optimiser votre site avec le module deflate d'Apache2

Voici un module d’Apache qui me semble indispensable afin d’optimiser votre site web. C’est le mod_deflate. Il permet de compresser les fichiers html, css, xml et d’autres encore avant de les envoyer aux clients qui visitent votre site. Ensuite c’est le navigateur de vos visiteurs qui se charge de les décompresser. Ce qui permet, normalement, d’afficher vos pages plus rapidement.

Pour configurer ce module rien de plus simple:

  • créer un fichier deflate.conf dans votre répertoire /etc/apache2/conf.d/

touch /etc/apache2/conf.d/deflate.conf

    • Dans ce fichier ajouter le texte ci-dessous:

<IfModule mod_deflate.c>
DeflateCompressionLevel 9
</IfModule>

<Location />
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE application/x-httpd-eruby

SetOutputFilter DEFLATE

SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:pdf|avi|mov|mp3|mp4|rm)$ no-gzip dont-vary

BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html

# Pour les proxies
Header append Vary User-Agent env=!dont-vary
</Location>

  • Ensuite activer le module et redémarrer apache2

a2enmod delfate

/etc/init.d/apache2 restart

Dans le fichier deflate.conf il y a un paramètre très important « DeflateCompressionLevel 9 ». Ce paramètre permet de fixer le niveau de compression de 1 (peu compressé) à 9 (compression max). Avec ma petite expérience je peux dire que le niveau 9 ne pause pas de problèmes. Le paramètre « AddOutputFilterByType DEFLATE » définit les fichiers qui vont être compressés.

Pour plus d’infos sur le module deflate: http://httpd.apache.org/docs/2.2/mod/mod_deflate.html

Vous pouvez tester votre site avec l’outil suivant: https://developers.google.com/speed/pagespeed/insights?hl=fr

Cette outil fournit d’autres points d’améliorations.

Si vous avez d’autres idées pour optimiser un site web apache2 n’hésitez pas!

 

Source de cet article: http://www.alsacreations.com/article/lire/914-compression-pages-html-css-gzip-deflate.html