Messages: 1549

Enregistré le: 15 Juin 2010

Message le Jeu Déc 29, 2011 16:44

Bonjour à tous,

Je cherche à accélérer mon site en suivant les instructions de PageSpeed, j'ai donc mis en place la compression Gzip par .htaccess qui fonctionne bien sauf pour les .js et .css

Voilà ce que j'ai mis dans .htaccess
Code: Tout sélectionner
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/css text/plain text/php text/javascript text/xml application/javascript


PageSpeed me dit aussi :
Les ressources compressibles suivantes, qui peuvent être mises en cache, doivent être associées à un en-tête "Vary: Accept-Encoding"
Et en dessous il n'y a que des .css et des .js

Pourquoi les .js et .css ne sont pas pris en compte alors que le .html oui par exemple ?
Comment dois-je spécifier le Vary: Accept-Encoding pour les .css et les .js ?
Haut
9 Réponses
Messages: 787

Enregistré le: 19 Déc 2002

Message le Jeu Déc 29, 2011 21:12

[edit]
Haut
Messages: 1549

Enregistré le: 15 Juin 2010

Message le Ven Déc 30, 2011 9:24

Merci pour cette réponse AU-TOP :lol:
Haut
Messages: 3574

Enregistré le: 11 Fév 2009

Message le Ven Déc 30, 2011 9:45

tu es chez quel hébergeur!!?
Haut
Messages: 1549

Enregistré le: 15 Juin 2010

Message le Ven Déc 30, 2011 10:36

Je passe par un intermédiaire mais c'est OVH l'hébergeur je crois. Sinon c'est un Apache 2 le serveur, donc mon code devrait marcher, je ne comprend pas pourquoi les .js et .css passent au travers
Comment dois-je spécifier le Vary: Accept-Encoding pour les .css et les .js ?
Haut
Messages: 3574

Enregistré le: 11 Fév 2009

Message le Ven Déc 30, 2011 10:56

dans ton fichier .HTACCESS met ceci:


Code: Tout sélectionner
<IfModule mod_headers.c>
  <FilesMatch "\.(js|css|xml|gz)$">
    Header append Vary Accept-Encoding
  </FilesMatch>
</IfModule>


éventuellement tu peux mettre ceci dans ton .HTACCESS:

Code: Tout sélectionner
<IfModule mod_deflate.c>
    #The following line is enough for .js and .css
    AddOutputFilter DEFLATE js css

    #The following line also enables compression by file content type, for the following list of Content-Type:s
    AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml

    #The following lines are to avoid bugs with some browsers
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</IfModule>
Haut
Messages: 1549

Enregistré le: 15 Juin 2010

Message le Ven Déc 30, 2011 11:33

J'avais déjà mis ton 1er code, ça ne change rien.

J'ai ajouté le 2ème, ça ne change rien non plus :(
Haut
Messages: 3574

Enregistré le: 11 Fév 2009

Message le Ven Déc 30, 2011 11:47

là je sèche, parce que chez moi le premier fonctionne et le deuxième ne semble pas fonctionner pour je ne sais quel obscure raison.

essaie si c'est pas déjà fait déjà fait d'activer le PHP 5 ou plus en suite de créer un fichier php.ini avec le code suivant:

Code: Tout sélectionner
zlib.output_compression = true
zlib.output_compression on
zlib.output_compression_level 5


chez moi héberger par 1and1, se script de configuration pour PHP pour Apache Server fonctionne bien, mais comble de l'ironie compresse tous sauf les fichiers .css , sans que j'en sache la raison.
après n'étant pas un pro de la configuration APACHE, je risque de ne pas être d'une très grande aide.

edit: cela pourrait vouloir dire que sur nos serveur le module mod_deflate.c n'est soit pas présent soit pas activer dans APACHE SeRveR le problème c'est que c'est un serveur mutualiser donc personne ne peux y toucher.
Haut
Messages: 1549

Enregistré le: 15 Juin 2010

Message le Ven Déc 30, 2011 11:57

C'est vraiment bizarre, j'ai beau chercher sur pleins de sites et tester à chaque fois, ça marche sauf pour les js et css.

Je n'ai pas accès à la configuration du serveur, je ne peux rien te dire là dessus, il faut que je passe par htaccess. C'est Apache/2.0.52 (CentOS) et PHP 4.3.9 (Zend : 1.3.0)

J'essaie par .htaccess
Haut
Messages: 200

Enregistré le: 10 Mai 2005

Message le Ven Déc 30, 2011 12:31

expérience sur 1and1, p'être que ça peut t'aider ou te donner des idées
- le html semble être compressé par défaut, donc rien avoir avec une règle dans htaccess,
- je n'ai pas réussi à utiliser le module deflate pour compresser le js et les css, rien à faire !,
- sur le package bas de gamme 1and1, impossible modifier la config du serveur.

Au final je me suis tourné vers une solution de compression en live à l'aide d'un script php et mise en cache des fichiers. Du coup, j'ai modifie les liens dans le header ...rel="stylesheet" href="http://www.fobec.com/gzip.php?f=file.css" ...
ça fait 2 semaines que ça tourne, aucun soucis
Haut