2016-09-27 2 views
1

Comment pouvons-nous compresser chaque fichier séparément avec son propre nom de fichier original dans le répertoire spécifique & ses sous-répertoires.Gzip compressé chaque fichier séparément

De cette façon, j'espère que nous n'aurons plus besoin d'exécuter une «compression gzip à la volée» à chaque fois pour les fichiers de texte en clair du cache nginx fastcgi.

Cela pourrait être économiser beaucoup de ressources & également nous donner le temps de latence/d'attente faible de servir des fichiers déjà mis en cache.

+0

http://nginx.org/fr/docs/http/ngx_http_gzip_static_module.html –

Répondre

0

Vous devez compresser les fichiers vous-même - Nginx ne vous aide pas. Pour tous les fichiers que vous voulez pré-compresser, il suffit de les compresser et les enregistrer comme "nom de fichier original + .gz à la fin" (dans le même répertoire), puis utilisez l'option gzip_static pour servir ces fichiers.

donc un exemple concret de ce qui pourrait être:

http { 
    gzip on; 
    gzip_min_length 500; 
    gzip_proxied  any; 
    gzip_comp_level 4; 
    gzip_types text/plain text/xml application/xml application/json image/svg+xml image/x-icon image/gif text/css application/x-javascript; 
    gzip_vary on; 
    gzip_disable  "msie6"; 
    gzip_static on; # this enables the .gz files being served 

    ... here come your server blocks and other Nginx configuration 
} 

Maintenant, les fichiers .gz sont servis pour tous gzip_types, si elles existent - pour tous les sites. Si vous voulez seulement utiliser gzip_static dans certains répertoires/domaines, vous pouvez le supprimer dans le bloc http ci-dessus et l'ajouter dans un bloc d'emplacement - c'est ce que je fais habituellement.