RE: IE 5.0 stylesheet caching bug

Dan Kohn (
Tue, 28 Dec 1999 17:07:04 -0800

Roy, that completely fixed the problem, leading to dramatically enhanced
performance. And, the browser sniffing functionality still appears to work
as designed, even with the .css suffix.

Todd, I would suggest changing the W3C pages to link to Steely.css and
adding a note about the bug. IE 5 is a very popular browser, and it would
be a shame for CSS or the W3C Core StyleSheets to get an undeserved
reputation for bad performance.

Finally, who can we bug at MSFT to get them to stamp out this bug before IE
5.5 is released? Henrik? Yaron?

Thanks, Roy. You're a stud.

- dan

Daniel Kohn <>
tel:+1-425-519-7968  fax:+1-425-602-6223

-----Original Message----- From: Roy T. Fielding [mailto:fielding@kiwi.ICS.UCI.EDU] Sent: Tuesday, 1999-12-28 11:58 To: Dan Kohn Cc: ''; Fork (E-mail); '' Subject: Re: IE 5.0 stylesheet caching bug

>IE refetches the stylesheet. Now, choose File: Work Offline and hit back. >Note that the page is displayed without the stylesheet because it's not >cached.

That is because the URL being used for the stylesheet is negotiated, which results in a Vary header field being returned by Apache, which for some incredibly stupid reason MSIE refuses to cache even though its user agent is based on a non-shared cache.

GET HTTP/1.0 Accept: */* User-Agent: GET/0.6 libwww-perl/0.50 Host: HTTP/1.1 200 OK Date: Tue, 28 Dec 1999 18:47:00 GMT Server: Apache/1.3.6 (Unix) PHP/3.0.11 Content-Location: Steely.css Vary: negotiate TCN: choice Connection: close Content-Type: text/css

The workaround is just to use the filename extension on the URL ".css" and avoid the negotiation code altogether. Since the usage is unable to handle anything but CSS, not using the extension doesn't improve the longevity of this reference.