1

How can I debug what is being returned by IIS(6) when the response goes through proxies before getting to the browser?

I have requests for static files which are being sent with the 'Accept-encoding: gzip' header. These are being gzipped correctly. However, if a 'Via: ' header (to redirect the response via a proxy) is also included the content is not received gzipped by the browser.

I want to know if the issue is with IIS not applying the compression or related to something the proxy is doing.

How can I investigate this problem?

This is related to IIS6 not doing gzip compression when including Via header in request.

Community
  • 1
  • 1
Matt Lacey
  • 65,560
  • 11
  • 91
  • 143
  • Could the Via header be turning off compression in IIS6? Since via indicates a proxy request, IIS might just be letting the proxy deal with the actual end user compression. Obviously not ideal, but could be the explanation. – Christopher G. Lewis Nov 24 '09 at 05:31
  • @Christopher_G_Lewis It could be that this is what's happening but how could I test this? I can't find any docs on IIS header processing. Know of any? – Matt Lacey Nov 24 '09 at 11:24
  • Eventually gave up on this. Couldn't find a way of determining if what IIS6 does with/because of the Via header. The general response from asking this elsewhere was upgrade to IIS7. – Matt Lacey Dec 04 '09 at 15:04

2 Answers2

1

In case anyone else hits this problem i believe it's due to the "HcNoCompressionForProxies" option, configurable in the metabase. It specifically lets you disable compression for proxied requests.

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/05f67ae3-fab6-4822-8465-313d4a3a473e.mspx?mfr=true

Molomby
  • 5,859
  • 2
  • 34
  • 27
0

If your still interested my answer would be install Fiddler probably on the client first. For HTML snooping you can't do much better.

That would be my first port of call.

Mike Mengell
  • 2,310
  • 2
  • 21
  • 35
  • I'm familiar with Fiddler and used this originally to determine that I was sending headers correctly. This doesn't help determine what the SERVER receives when the request goes through a proxy though or how it processes the request - which was the question. – Matt Lacey Dec 21 '10 at 10:50
  • My mistake in that case I would use Wireshark to look at the network traffic. You could apply some filters to see the traffic for TCP and the destination/source to work out whats being transmitted. Wireshark can display this as text so you can see the requests. This wouldn't help answer HOW it processes the request. But might help. – Mike Mengell Dec 21 '10 at 11:31