Serving web resources (AXDs) with HTTP Compression through Windows Azure CDN

With Windows Azure CDN you must pass the QueryString parameter containing a compressible filename type (.js, .cs etc) or you are requesting a file by its original name (jquery.js, site.css, etc.) otherwise Accept-Encoding HTTP header will not be passed.

For example when using an AXD resource handler (WebResource.axd, etc.) only, the HTTP compression will not be performed because unless append a QueryString parameter with a .cs or .js extension. If you are using custom AXD resource handler, then you can just applied &group=core.js and &group=core.css in your combined minified resources and the compression worked as expected.

Original URI:

  • https://_your_azure_CDN_endpoint_.vo.msecnd.net/resourceManager.axd?token=HL80vX5hf3lIAAA

Modify as:

  • https:// _your_azure_CDN_endpoint_.vo.msecnd.net/resourceManager.axd?token=HL80vX5hf3lIAAA&group=core.js

Once the Azure CDN verify that it has.js in the querystring, it will return the compressed version of the resource.

Resource: https://stackoverflow.com/questions/10420004/azure-cdn-enabling-http-compression-hosted-web-role/10434390#10434390

Keywords: Windows Azure, CDN, AXD, Resource