views:

378

answers:

1

I'm currently experiencing problems with static content - most noticeably jQuery datepicker images, but also other static files - which results in images/static content loaded many times - I can clearly see it in IE6 status bar (not to mention SLOW rendering).

The problem and possible solutions seems to be described here: http://www.explainth.at/en/tricks/flickfix.shtml. However, I use IIS6 not Apache, and static files that I don't want to feed through php or asp.

How do I make IE6 cache static images properly? How do I add custom response header for specific files/folders?

Hm, let met re-phrase it. I'm not sure it is caused by the bugs above. Actually, I tried appcmd to apply cacheControlMode/etc and it doesn't seem to work. As far as I remember, IE6 also does not cache for XMLHttpRequest calls? So, the biggest problem that I need to solve is:

  • in jQuery calendar, moving mouse over image buttons (prev/next) causes them to be reloaded-refreshed
  • in jQuery dialog, each dialog('open') causes images from theme (like header background) to be re-loaded/refreshed
  • etc

This link probably gives a better explanation: http://ajaxian.com/archives/internet-explorer-and-ajax-image-caching-woes

How do I solve this - that is, without feeding images through ASP.NET to setup headers?

A: 

Thanks everybody for listening, the trick with appcmd seems to work ;-) The problem was that I used jQuery theme from googleapis... which obviously was not affected by appcmd ;-) Moving theme to local folder did the trick. These are the commands:

\Windows\system32\inetsrv\appcmd.exe set config "Default Web Site/images" -section:system.webServer/staticContent -clientCache.cacheControlMode:UseMaxAge

\Windows\system32\inetsrv\appcmd.exe set config "Default Web Site/images" -section:system.webServer/staticContent -clientCache.cacheControlMaxAge:"01:00:00"

from http://forums.iis.net/t/1067723.aspx

queen3
It seems that there is no appcmd.exe for IIS6. I am confused.
Jakub Šturc
-1 As the question was concerning IIS6 but the answer only works on IIS7.
KevM
Agree. Seems that problem was that I used googleapis' version of jquery.
queen3