Cache invalidation using the query-string, bad practice?

It's true that query string cache invalidation is not exactly best practice. There are cases where it doesn't work... some browsers (supposedly), and your CDN might be set up to ignore the query string (serve the same file). But this doesn't mean it's not effective for development workflows or as a quick fix that scratches the itch.

Some folks feel strongly that query strings are not good enough. For a professional site (especially with continuous integration) you should use filenames based on last updated date or a hash of file contents.

Links on the topic...

  • https://css-tricks.com/strategies-for-cache-busting-css
  • https://www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring
  • File Caching: Query string vs Last-Modified?