I have a very well tested module in my framework (ie: running in production environments for a couple of years) called 'fastpage', which takes care of both memcaching and gzipping for frequently requested content. It memcaches one version of each unique page both gzipped and non-gzipped, and returns the appropriate version based upon the browser's Accept-encoding header.
Use is:
$page_spec = array($dependent,$variables,$go,$here);
if(!fastpage_display('content_id',$page_spec)) {
... make page here ...
fastpage_displayed('content_id',$page_spec);
}
Unfortunately, on IE8 beta (in IE8 mode, or in IE7 emulation mode), the fastpage-enabled content was not being un-gzipped. IE would request the content, a 200 status and correct byte count would appear in the server logfile, and IE would show no errors. However, CSS would not be applied and Javascript would not execute.
The only fix I can find right now is to disable gzip entirely for this browser. User agent string is: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727
The same output works fine in firefox (windows, linux, mac), and in safari.
Versions are: zlib 1.2.3-r1 / php 5.2.6-r7 / lighttpd 1.4.20
So much for the 'this has been fixed in IE7' comment, above...