Compression gzip chez 1and1 et ovh la galère !

La compression gzip permet de limité la perte de bande passante dû au téléchargement des fichiers css et javascript c’est de plus une des optimisations de site qui peuvent avoir une influence sur votre référencement. 5 minutes suffisent pour la mettre en place donc ne passez pas à coté.

Voici une méthode pour compresser vos fichier css. Il en existe d’autres mais celle ci est simple rapide et propre. Avec quelques arrangement vous pourrez l’utiliser pour compresser vos fichiers javascript.

Dans vote répertoire comprenant vos fichiers css créé un fichier .htaccess et insérer ce code:



AddHandler application/x-httpd-php .css
php_value auto_prepend_file zipcss.php
php_flag zlib.output_compression On
Créé ensuite un fichier zipcss.php dans le même répertoire et insérer ce qui suit:
header("Content-type: text/css; charset: UTF-8");
header("Cache-Control: must-revalidate");
$offset = 60 * 60 ;
$ExpStr = "Expires: " .
gmdate("D, d M Y H:i:s",
time() + $offset) . " GMT";
header($ExpStr);


Et voila désormais vos fichiers css seront compressés et vous gagnerez quelques KO de bande passante.

La méthode est la même pour vos fichier javascript il faut juste modifier légèrement le header

Attention au GZIP chez 1and1 et ovh !

En fait, 1and1 n’autorise pas la modification des valeur PHP avec un htaccess il propose par contre d’utiliser un php.ini . Mais comme je suis quelqu’un de tétu j’ai trouvé une autre solution qui me plait mieux :). Je vous la livre ici:

Je créé un fichier .htacces que je place dans le dossier qui contient mes fichiers css (/css)



RewriteEngine On
RewriteRule (.*)\.css /css/compressecss.php?file=$1.css [L]


Je créé ensuite un fichier php compressecss.php que je place lui aussi dans mon dossier css (/css)



ob_start("ob_gzhandler");
header("Content-type: text/css; charset: ISO-8859-1");
echo (file_get_contents ($file));


Et voila maintenant tout mes fichiers css seront compressés et je gagne de la bande passante :).
Pour les fichiers javascript il suffit de faire pareil en modifiant text/css par text/javascript

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *