Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

browser caching

Posted on 2012-03-12
7
Medium Priority
?
282 Views
Last Modified: 2012-05-07
In regards to forcing a browser to download a new copy of a file that it would typically cache, would adding a parameter to the url have the same effectiveness as changing the filename itself? ie: file.css?v=123 vs file123.css
0
Comment
Question by:nzinsli
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 84

Expert Comment

by:Dave Baldwin
ID: 37710967
That works if it constantly changes.  The problem of course is getting the browser to start downloading that version in the first place.  As long as the original pages are still cached with the original file name, the browser will still keep using those versions until they expire from the local cache.
0
 

Author Comment

by:nzinsli
ID: 37711015
The browser shouldn't use the cached file though if the html is calling for a new filename in the code tho, correct? I was just curious as to if one method was preferred over another.
0
 
LVL 84

Expert Comment

by:Dave Baldwin
ID: 37711270
The problem usually is that the HTML file is cached and the new file name for the CSS doesn't get picked up until the HTML file in the cache expires.
0
Moving data to the cloud? Find out if you’re ready

Before moving to the cloud, it is important to carefully define your db needs, plan for the migration & understand prod. environment. This wp explains how to define what you need from a cloud provider, plan for the migration & what putting a cloud solution into practice entails.

 

Author Comment

by:nzinsli
ID: 37714857
While that may be true, I can't say I've ever had a problem with the html being cached or not showing the new version when loading. Wouldn't the browser look at the last modified date on the server version before rendering the cached html? Include files on the other hand...is where my question lies. If you suppose that it is not loading a cached html, is there any difference for caching if I call an included css file with file.css?v=123 or file-123.css?
0
 
LVL 84

Accepted Solution

by:
Dave Baldwin earned 2000 total points
ID: 37716044
"file.css?v=123 or file-123.css"  No difference.  If the link is "file.css?v=124" next time, then there is.  It has appeared that some times the browser only looks at the last-modified date of the HTML file and if it hasn't changed, then it loads CSS and javascript from cache.  I think that maybe that has improved in the last year or two now that you mention it because it hasn't been as much of a problem for me recently.  But I've also upgraded my web server twice in the last year.
0
 

Author Comment

by:nzinsli
ID: 37716213
"If the link is "file.css?v=124" next time, then there is." ...If the version # changes, then there is a difference??

I'm glad you brought up modified date. The reason this all came about, is I'm going to be dynamically building the file include list via literals in vb.net. The version # is going to be read from a xml file that gets updated when one of these files is updated, so the user is more assured to get the latest code w/o refreshing. But, since the actual html file isnt being edited & saved, the modified date wont change. I wonder if this will cause an issue...hmmm...
0
 
LVL 84

Expert Comment

by:Dave Baldwin
ID: 37716370
The browser cache is done by the complete URL including the query string.  Adding the current time is a standard technique in AJAX to prevent the browser from just returning info from it's cache.

Look here for info on preventing caching in IIS: http://www.iis.net/ConfigReference/system.webServer/staticContent/clientCache
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

FAQ pages provide a simple way for you to supply and for customers to find answers to the most common questions about your company. Here are six reasons why your company website should have a FAQ page
CTAs encourage people to do something specific to show interest in your company, product or service. Keep reading to learn why CTAs should always be thought of as extremely important, albeit small, sections of websites.
The viewer will learn how to count occurrences of each item in an array.
Any person in technology especially those working for big companies should at least know about the basics of web accessibility. Believe it or not there are even laws in place that require businesses to provide such means for the disabled and aging p…
Suggested Courses

722 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question