Azure CDN - Enabling HTTP Compression - Hosted Web Role
-
quarta-feira, 2 de maio de 2012 16:04
We are using the Azure CDN with HTTPS and QueryString support.
Using the Azure CDN, we are unable to support HTTP Compression via our hosted web role. We followed this MSDN Blog example, but it didn't change the compression behavior. For troubleshooting, we logged the IIS request headers that the CDN was relaying and discovered that the CDN Edge Servers (EdgePrism/4.0.11.3) are not passing the "Accept-Encoding" HTTP header which thus won't allow us to serve up a compressed resource. The MSDN blog also states that the edge servers are using HTTP 1.0, but our IIS logs indicates that it is served up via HTTP 1.1 protocol - telling us that we don't need the noCompressionForHttp10 and noCompressionForProxies flags anyway.
Why aren't the edge servers relaying the "Accept-Ecoding" HTTP Header? Without this header relay we cannot deliver compressed content via gzip/deflate.
Here are the HTTP Header requests that we've captured from the browser and thru the CDN to our IIS web role.
====== Browser Request Headers======
-- Chrome 18 Client Request --
Host: xxxx.vo.msecnd.net
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.162 Safari/535.19
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3-- FF 12 Client Request --
HTTP/1.1
Cache-Control: no-cache
Connection: keep-alive
Pragma: no-cache
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: en-us,en;q=0.5
Host: xxxx.vo.msecnd.net
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0-- IE 8 Client Request --
Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Accept-Language: en-us
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; MS-RTC LM 8; .NET4.0C; .NET4.0E)
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Host: xxxx.vo.msecnd.net====== IIS Web Role - CDN Translated Request Headers======
-- Chrome 18 --
HTTP/1.1
Cache-Control: max-age=259200
Connection: keep-alive
Via: 1.1 cds102.ord9.msecn.net (EdgePrism/4.0.11.3)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Language: en-US,en;q=0.8
Host: XXXX.cloudapp.net
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.162 Safari/535.19
X-Forwarded-For: XXXX-- FF 12 --
HTTP/1.1
Cache-Control: max-age=259200
Connection: keep-alive
Via: 1.1 cds102.ord9.msecn.net (EdgePrism/4.0.11.3)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Host: XXXX.cloudapp.net
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
X-Forwarded-For: XXXX-- IE 8 --
HTTP/1.1
Cache-Control: max-age=259200
Connection: keep-alive
Via: 1.1 cds102.ord9.msecn.net (EdgePrism/4.0.11.3)
Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Accept-Language: en-US
Host: XXXX.cloudapp.net
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; MS-RTC LM 8; .NET4.0C; .NET4.0E)
X-Forwarded-For: XXXX
- Editado SliverNinjas quarta-feira, 2 de maio de 2012 16:10
Todas as Respostas
-
quinta-feira, 3 de maio de 2012 06:55Moderador
Hi,
I note author Avcash has replied you at this threads form Stackoverflow, does it solve your problem?
http://stackoverflow.com/questions/10420004/azure-cdn-enabling-http-compression-hosted-web-role
Hope this helps.
Please mark the replies as answers if they help or unmark if not. If you have any feedback about my replies, please contact msdnmg@microsoft.com Microsoft One Code Framework
- Marcado como Resposta Arwind - MSFTModerator quarta-feira, 16 de maio de 2012 02:59
-
terça-feira, 8 de maio de 2012 05:47ModeradorHave you ever solve your problem now?
Please mark the replies as answers if they help or unmark if not. If you have any feedback about my replies, please contact msdnmg@microsoft.com Microsoft One Code Framework
-
quarta-feira, 9 de maio de 2012 16:34
Arwind - this problem was solved with the workaround we discovered regarding Web Resource Handlers (AXDs).- Marcado como Resposta Arwind - MSFTModerator quinta-feira, 10 de maio de 2012 02:49

