GitHub – Caching Assets in GitHub Pages

cachegithub

Is it possible to cache assets in github pages?
I'm wondering If I should consider moving my webapp from my personal server to github pages and the only thing that's stopping me so far is this.

Best Answer

The server at github.io certainly does caching.

I have a demo up an running over there and was able to determine that the server sets Last-Modified which allows a client to use If-Modified-Since and get 304 from the server if the data has not been modified since it was last fetched. The server also sets CacheControl: max-age=600. I'm not cache specialist but I understand it to mean that a client may fetch from the cache without revalidating as long as the data is not more than 10 minutes old. If it is more than 10 minutes old, it must check with the server (revalidate) and may get a 304 answer.

The upshot is that a client won't redownload something that has not changed but it make take up to 10 minutes for a client to find that a change occurred.

All this, of course, can change whenever the sysadmins at github.io decide to change it.