Abilita gzip IIS7

Come posso abilitare IIS7 per gzip file statici come js e css e come posso testare se IIS7 li sta veramente gzip prima di inviarli al client?

Configurazione

È ansible abilitare la compressione GZIP interamente nel file Web.config . Ciò è particolarmente utile se si è su hosting condiviso e non è ansible configurare IIS direttamente o se si desidera che la configurazione sia condivisa tra tutti gli ambienti target.

                   

analisi

Per verificare se la compressione funziona o no, usa gli strumenti di sviluppo in Chrome o Firebug per Firefox e assicurati che l’intestazione della risposta HTTP sia impostata:

 Content-Encoding: gzip 

Si noti che questa intestazione non sarà presente se il codice di risposta è 304 (Non modificato). In tal caso, eseguire un aggiornamento completo (tenere premuto shift o control mentre si preme il pulsante di aggiornamento) e ricontrollare.

Dovrai abilitare la funzione nel pannello di controllo di Caratteristiche di Windows:

Schermata della funzione IIS

Gzip globale in HttpModule

Se non hai accesso all’istanza finale di IIS (hosting condiviso …) puoi creare un HttpModule che aggiunge questo codice a ogni evento HttpApplication.Begin_Request:

 HttpContext context = HttpContext.Current; context.Response.Filter = new GZipStream(context.Response.Filter, CompressionMode.Compress); HttpContext.Current.Response.AppendHeader("Content-encoding", "gzip"); HttpContext.Current.Response.Cache.VaryByHeaders["Accept-encoding"] = true; 

analisi

Complimenti, nessuna soluzione viene eseguita senza test. Mi piace utilizzare il plugin di Firefox ” Liveheaders ” che mostra tutte le informazioni su ogni messaggio http tra browser e server, compresa la compressione, la dimensione del file (che è ansible confrontare con le dimensioni del file sul server).

sotto windows 2012 r2 può essere trovato qui:

inserisci la descrizione dell'immagine qui

Se utilizzi YSlow con Firebug e analizzi il rendimento della tua pagina, YSlow ti dirà sicuramente quali artefatti sulla tua pagina non sono gzip!

Se stai anche provando a gzip di pagine dinamiche (come aspx) e non funziona, probabilmente perché l’opzione non è abilitata (devi installare il modulo Dynamic Content Compression usando le funzionalità di Windows):

http://support.esri.com/en/knowledgebase/techarticles/detail/38616

Avevo solo bisogno di aggiungere la funzionalità nelle funzionalità di Windows come menzionato da Charlie. Per le persone che non riescono a trovarlo su Windows 10 o Server 2012+, trovarlo come sotto. Ho faticato un po ‘

Windows 10

inserisci la descrizione dell'immagine qui

Windows Server 2012 R2

inserisci la descrizione dell'immagine qui

window server 2016

inserisci la descrizione dell'immagine qui

Un altro modo semplice per testare senza installare nulla, non dipende dalla versione di IIS. Incolla il tuo url a questo link – SEO Checkup

prova gzip

Per aggiungere a web.config: http://www.iis.net/configreference/system.webserver/httpcompression

Prova Firefox con gli addon di Firebug installati. Lo sto usando; ottimo strumento per lo sviluppatore web.

Ho abilitato la compressione Gzip anche nel mio IIS7 usando web.config.