views:

59

answers:

1

A site I am working on just exceeded the monthly bandwidth our host provides (25,000 MB) and when looking at the server stats and logs, I found TwinHelix's iepngfix.htc to be the #4 largest bandwidth drain.

#4 hits:73939 KBytes:181035 /iepngfix.htc

I find this especially interesting because a .swf used as a background image on every page had only 3,918 hits compared to the 73,939 hits that iepngfix.htc received. Hard for me to believe that there are even that many IE6 users visiting this site.

This file is being called within screen.css in the following way:

img, div, input { behavior: url("iepngfix.htc") }

The only way I can explain this 4KB file eating so much bandwidth, is if it is being read and re-read for every single img, div, and input element, whether or not there is a PNG used and possibly for more browsers than just IE.

Am I understanding this correctly? If anyone could help me understand how all this works, it would be much appreciated. Thanks!

+4  A: 

It could be that caching is not properly set up for the .htc file extension in your web server. Check the response headers, e.g. using Firebug, for what caching instructions get served.

Also using Firebug's "Net" tab, you'll be able to see whether the URL gets loaded in non-IE browsers. It shouldn't, but you never know.

Pekka
Since I'm not iepngfix.htc in the list under Firebug's NET tab I'm assuming that it is not getting loaded with firefox. However I'm not sure I understand the response headers too well. Should I be looking at the screen.css file or the main index page's responses?
filip
@filip can you post a live link?
Pekka
@filip Can you post a link to the htc?
Pekka
@filip yup, `Cache-Control: max-age=0` prevents caching. See e.g. http://stackoverflow.com/questions/2594695/how-to-use-control-cache-headers for recipes to fix this in Apache
Pekka
Ohhhh ok great, thank you so much! ( BTW comments with links to client's site have been removed )
filip