Utilisation appropriée du codage de contenu


9

J'ai entendu dire que l'utilisation de la définition du Content-Encoding d'une page sur zip ou gzip réduirait les temps de chargement et réduirait la bande passante. Cela vaut-il la peine d'être mis en œuvre pour le site moyen ou uniquement pour les sites à forte charge? De plus, comment procéder pour configurer des pages à servir de cette manière dans un environnement LAMP? Existe-t-il une différence pratique entre zip et gzip?


Je pense: zip = dégonfler
Oskar Skog

Réponses:


6

Cela en vaut la peine, même pour les sites à trafic moyen à faible. Bien que cela réduise votre bande passante (avec une légère augmentation de l'utilisation du processeur), le véritable avantage est pour vos utilisateurs. Même sur le haut débit, vous pouvez remarquer une amélioration des performances lors de l'accès aux pages compressées, mais vos utilisateurs sur des vitesses de réseau plus lentes et des smartphones plus récents l'apprécieront vraiment.


2

Le navigateur peut envoyer un en-tête "Accepter l'encodage" qui indique qu'il peut accepter différents types d'encodage. Il s'agit généralement de "gzip, dégonfler". (Google Chrome a un format bizarre appelé "sdch" que vous pouvez simplement ignorer.) Ensuite, si vous obtenez cet en-tête du navigateur, vous pouvez, si vous le souhaitez, renvoyer votre contenu compressé à l'aide du format gzip ou du dégonflage. Lorsque vous faites cela, vous devez bien sûr dire au navigateur ce que vous avez fait, donc vous ajoutez l'en-tête "Content Encoding" à votre contenu sortant.

Les formats gzip et deflate sont définis dans RFC (documents de normes Internet). Il n'y a pas d'option "zip", bien qu'il puisse y avoir une option "bzip2" dans certains navigateurs.

Maintenant, votre problème est de coder vos trucs dans ce format et de les renvoyer. Si vous utilisez Apache, il existe des moyens de le configurer pour le faire automatiquement (mod_deflate, etc.). Si vous envoyez des images, notez que la plupart des formats d'image tels que JPEG, PNG, GIF, etc. sont déjà compressés, vous n'avez donc aucun avantage à les compresser. Fondamentalement, cela ne fonctionne que pour HTML, CSS, texte brut ou JavaScript.

Vous devez être prudent en utilisant l'encodage "dégonfler" car Internet Explorer a un bogue de longue date où il ne comprend pas trop bien cela. Je pense que des choses fantastiques comme Google App Engine détermineront automatiquement la compression à utiliser et l'appliqueront pour vous.


1

Pour étendre les réponses de Jason Birchs et Kinopikos : une autre raison de plus en plus importante pour laquelle vous voulez absolument appliquer cette optimisation (très simple) est l'annonce de Google pour utiliser la vitesse du site dans le classement de recherche Web à partir du 9 avril 2010. Vous ne voulez certainement pas manquer sur une amélioration de vos efforts de référencement aussi simple que possible;)

Une fois que vous aurez commencé à regarder les choses sous cet angle, vous profiterez très probablement (et apprécierez de travailler avec) les outils respectifs vous donnant un aperçu de la performance de vos pages et de ce que vous pouvez faire pour les améliorer:

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.