In my situation, a wordpress install, we use the core enqueue functionality for styles and scripts, and the version number parameter which adds a GET param after the filename, for cache busting. We bump this on changes to the linked file, as per normal. This is all well and good and technically working.
My issue is that our host sets an expires header for html files for 10 days, so the html ends up in the browser cache. The html includes the link tag, which includes the old version number, which means that they get the old CSS/JS.
When we encounter this in testing, we just Ctrl-Shift-R and all is well, but I would prefer not to be asking our user’s to clear their cache everytime we make a change.
My ‘Nuke it from Orbit’ solution would be to ask them to not cache html, but this seems like a Bad Idea(tm). Is there a good method for busting the browser HTML cache from our end? I feel like this should be a common issue and a solved problem, but maybe I’m just googling the wrong terms here because everything I have seen so far is basically – change the URL’s; which seems even more of an extreme solution (Take that, accumulated SEO Ranking!)