web-dev-qa-db-fra.com

Comment savoir si mon serveur diffuse du contenu GZipped?

J'ai une application Web sur un serveur NGinx. J'ai mis gzip on dans le fichier de configuration et maintenant j'essaie de voir si cela fonctionne. YSlow dit que ce n’est pas le cas, mais 5 sites Web sur lesquels le test a été testé le confirment. Comment puis-je obtenir une réponse définitive à ce sujet et pourquoi y a-t-il une différence dans les résultats?

104
Johnny

Il semble qu'une réponse possible soit, sans surprise, curl :

$ curl http://example.com/ --silent --write-out "%{size_download}\n" --output /dev/null
31032
$ curl http://example.com/ --silent -H "Accept-Encoding: gzip,deflate" --write-out "%{size_download}\n" --output /dev/null
2553

Dans le second cas, le client indique au serveur qu'il prend en charge le codage du contenu et vous pouvez voir que la réponse était effectivement plus courte et compressée.

176
zoul

Mettre à jour

Chrome a changé la façon dont il rapporte (voir la réponse originale si cela vous intéresse). Vous pouvez utiliser les outils de développement (F12). Accédez à l'onglet Réseau, sélectionnez le fichier que vous souhaitez examiner, puis examinez l'onglet En-têtes à droite. Si vous êtes gzippé, vous verrez cela dans l'encodage du contenu.

Dans cet exemple, slider.jpg est en effet gzippé.

 enter image description here

Comparez cela à cette page sur laquelle vous vous trouvez et regardez un fichier png, vous ne verrez pas une telle désignation.

 enter image description here

Soyons clairs, ce n'est pas parce que l'un est un jpg et l'autre un png. C'est parce que l'un est compressé et l'autre pas.


Réponse précédente

Dans Chrome, si vous affichez les outils de développement et accédez à l'onglet Réseau, les informations suivantes s'afficheront s'il n'y a pas de compression:

enter image description here

Et les éléments suivants s’il existe une compression IS:

enter image description here

En d'autres termes, le même nombre, haut et bas, signifie aucune compression.

67
Outfast Source

Voir dans les en-têtes de réponse. Dans FireFox, vous pouvez vérifier auprès de Firebug.

Content-Encoding    gzip

Si le serveur prend en charge le contenu gzip, celui-ci doit être affiché.

23
Ved

Vous pouvez rapidement utiliser un service Web du type: http://www.whatsmyip.org/http-compression-test/

L'outil "Audits" de Google Chrome dans les outils de développement est également pratique.

7
Michael Balint

Dans la nouvelle version de chrome, Outils de développement> réseau, vous pouvez cliquer avec le bouton droit de la souris sur le nom de la colonne, sélectionner l'option d'encodage du contenu et ajouter cette colonne (zone noire dans l'image).

et si vous voulez voir la taille de ce contenu gzip, sous @Outfast Source - vous pouvez cliquer sur l'icône qui se trouve en regard de Voir (affichée sous forme de boîte verte dans l'image).

afin que vous puissiez voir quel contenu est gzip activé.

 enter image description here

6
Krupall

J'ai écrit ce script basé sur la réponse du zoul:

#!/bin/bash

URL=$1
PLAIN="$(curl $URL --silent --write-out "%{size_download}\n" --output /dev/null)"
GZIPPED="$(curl $URL --silent -H "Accept-Encoding: gzip,deflate" --write-out "%{size_download}\n" --output /dev/null)"

if test $PLAIN -gt $GZIPPED
then echo "supported"
else echo "unsupported"
fi

exemple:

$ ./script.sh https://example.com/
6
Nate Symer

Un autre outil utile: http://gzipwtf.com

C’est le seul outil que j’ai vu qui analyse votre page et trouve toutes les ressources directement référencées (fichiers css, js, etc.) et vous indique si chacune d’elles est gzippée, au lieu de vous indiquer simplement si la page d’index est gzippée.

Fournit également d'autres statistiques utiles (temps de téléchargement des ressources, vitesse, etc.)

0
Greg