pitosalas
pitosalas

Reputation: 10882

How do ensure static web site pages are fresh?

I have a static web site hosted on Amazon S3. I regularly update it. However I am finding out that many of the users accessing it are looking at a stale copy.

By the way, the site is: http://cosi165a-f2016.s3-website-us-west-2.amazonaws.com) and it's generated a ruby static site generator called nanoc (very nice by the way). It compiles the source material for the site: https://github.com/Coursegen/cosi165a-f2016 into the html, css, js and other files.

I assume that this has to do with the page freshness, and the fact that the browser is caching pages.

How do I ensure that my users see a fresh page?

Upvotes: 0

Views: 145

Answers (1)

000
000

Reputation: 27247

One common technique is to keep track of the last timestamp when you updated static assets to S3, then use that timestamp as a querystring parameter in your html.

Like this:

<script src="//assets.com/app.min.js?1474399850"></script>

The browser will still cache that result, but if the timestamp changes, the browser will have to get a new copy.

The technique is called "cachebusting".

There's a grunt module if you use grunt: https://www.npmjs.com/package/grunt-cachebuster. It will calculate the hash of your asset's contents and use that as the filename.

Upvotes: 1

Related Questions