2015-09-04 18 views
5

Possiedo un'applicazione ASP.NET in esecuzione su un sito Web azzurro che utilizza il livello standard. Ho cercato di far funzionare la compressione gzip su di esso. Ho modificato il mio file web.config e aggiunto il seguente punto system.webServerAbilitazione della compressione gzip sui siti Web di Azure

<urlCompression doStaticCompression="true" doDynamicCompression="true"/> 
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files"> 
    <dynamicTypes> 
     <add mimeType="text/*" enabled="true"/> 
     <add mimeType="message/*" enabled="true"/> 
     <add mimeType="application/javascript" enabled="true"/> 
     <add mimeType="application/x-javascript" enabled="true"/> 
     <add mimeType="*/*" enabled="false"/> 
    </dynamicTypes> 
    <staticTypes> 
     <add mimeType="text/*" enabled="true"/> 
     <add mimeType="message/*" enabled="true"/> 
     <add mimeType="application/javascript" enabled="true"/> 
     <add mimeType="application/x-javascript" enabled="true"/> 
     <add mimeType="*/*" enabled="false"/> 
    </staticTypes> 
</httpCompression> 

Questo funziona quando funziona a livello locale con IIS Express, ma non funziona quando distribuito in azzurro. La risposta contiene le seguenti intestazioni.

Accept-Ranges:bytes 
Content-Length:5381 
Content-Type:text/css 
Date:Fri, 04 Sep 2015 20:44:01 GMT 
ETag:"56386b2e88dad01:0" 
Last-Modified:Wed, 19 Aug 2015 14:06:02 GMT 
Server:Microsoft-IIS/8.0 
X-Powered-By:ASP.NET 
+1

Penso compressione Gzip è abilitato di default in siti web Azure. quindi non dovresti aver bisogno di ulteriori configurazioni ... http: //stackoverflow.com/questions/14722464/gzip-compression-in-windows-azure-websites – Aram

+0

Per me non funziona automaticamente. Inoltre non funziona quando provo ad aggiungerlo a web.config. – Jonathan

risposta

3

Ti manca l'elemento <scheme>

<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" /> 

Maggiori informazioni qui:

https://www.iis.net/configreference/system.webserver/httpcompression/scheme

<urlCompression doStaticCompression="true" doDynamicCompression="true"/> 
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files"> 
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" /> 
    <dynamicTypes> 
     <add mimeType="text/*" enabled="true"/> 
     <add mimeType="message/*" enabled="true"/> 
     <add mimeType="application/javascript" enabled="true"/> 
     <add mimeType="application/x-javascript" enabled="true"/> 
     <add mimeType="*/*" enabled="false"/> 
    </dynamicTypes> 
    <staticTypes> 
     <add mimeType="text/*" enabled="true"/> 
     <add mimeType="message/*" enabled="true"/> 
     <add mimeType="application/javascript" enabled="true"/> 
     <add mimeType="application/x-javascript" enabled="true"/> 
     <add mimeType="*/*" enabled="false"/> 
    </staticTypes> 
</httpCompression> 
+0

L'ho avuto originariamente e ho finito per rimuoverlo mentre facevo confusione con la configurazione. L'ho appena aggiunto ma non funziona per me. Non c'è ancora niente gzip in corso. – Jonathan

+0

come stai test? Ho testato il tuo codice originale e il mio codice ed entrambi hanno funzionato come previsto. Ho dovuto aggiungere solo il per farlo funzionare. –

+0

Sto guardando le intestazioni nella risposta dal sito web. I file sono anche la dimensione originale senza compressione. Dovrei ricordare che questo codice ** funziona ** quando è in esecuzione in locale con IIS Express, ma non in azzurro. – Jonathan

Problemi correlati