Gzip HTTP compression is website and web application performance optimization technique that enables in speeding up website /web application load time. However, developers often struggle to enable compression on dynamic content.

 

This article will provide a very simple step to enable gZip HTTP compression on dynamic content in Azure

 

Here is the process;

1.     Edit your ServiceDefinition.csdef file to contain this in the WebRole tag:

    <Startup>
      <Task commandLine="EnableCompression.cmd" executionContext="elevated" taskType="simple"></Task>
    </Startup>

 

2.     In your web-role, create a text file and save it as “EnableCompression.cmd”

3.     EnableCompression.cmd should contain this:

%windir%\system32\inetsrv\appcmd set config /section:urlCompression /doDynamicCompression:True /commit:apphost
%windir%\system32\inetsrv\appcmd set config  -section:system.webServer/httpCompression /+"dynamicTypes.[mimeType='application/json; charset=utf-8',enabled='True']" /commit:apphost

 

This simple process will enables dynamic compression for the json returned by the web-role in Azure.