Grâce à la compression, la transmission réseau peut être réduite. Le processus général de compression est le suivant:
Les avantages de la compression:
1) Réduire la taille du fichier de transmission
2) Économiser les ressources de bande passante
3) Améliorer la vitesse de réponse des ressources
Les inconvénients de la compression:
1) la compression côté serveur doit consommer des ressources CPU;
2) la décompression côté client doit consommer des ressources CPU;
Configurer la compression
Pour configurer la compression, vous devez utiliser le module ngx_http_gzip_module . Voici un exemple de configuration:
gzip on; gzip_http_version 1.1; gzip_vary activé; gzip_comp_level 6; gzip_proxied any; gzip_types text / plain text / html text / css application / json application / javascript application / x-javascript text / javascript text / xml application / xml application / rss + xml application / atom + xml application / rdf + xml; # assurez-vous que gzip ne perd pas de gros fichiers js ou css gzip # https://web.archive.org/web/20080301065334/http://blog.leetsoft.com/2007/7/25/nginx-gzip-ssl gzip_buffers 16 8k; # Désactivez gzip pour certains navigateurs. gzip_disable "MSIE [1-6]. (?!. * SV1)"; # gzip_min_length 20;
Tester la compression
Utilisez CURL pour tester si la compression GZIP est efficace, si le content-Encoding: gzip est inclus dans le correspondant, cela signifie que l'ouverture est réussie. L'exemple suivant:
# curl --head --header "Accepter-Encodage: gzip" "https://example.com/path/to.js" HTTP / 1.1 200 OK Date: mercredi 20 mai 2020 08:10:33 GMT Content- Type: application / javascript Dernière modification: mer, 20 mai 2020 02:04:22 GMT Connexion: keep-alive Varier: Accepter-Encoding Cache-Control: max-age = 315360000 Access-Control-Allow-Origin: * Access- Control-Allow-Credentials: vrai Content-Encoding: gzip
Tester avec Firefox
Dans Firefox, les champs Transféré et Taille du Réseau afficheront la taille du transfert et la taille réelle du fichier. Si GZIP est correctement activé, alors Transféré <Taille.
Précautions
Certains fichiers n'ont pas besoin d'activer la fonction de compression:
1) Pour les ressources telles que les images et les vidéos, le format de fichier lui-même est déjà un format compressé. L'effet de la recompression ne sera pas évident, donc la compression n'est pas recommandée.
2) La compression de fichiers consomme des ressources CPU et l'efficacité de la compression doit être comparée pour déterminer si la compression est nécessaire.
références
- WikiNotes / Configurer la compression GZIP
- Fonction d'optimisation des performances Nginx - Compression Gzip (améliore considérablement la vitesse de chargement des pages)