not including the query string in the key would sound like a very weird idea :-) i doubt many applications return the same content regardles of the query string... and if i know my urls have no query strings and want to prevent against cache busting, i would rewrite the url to strip the query string in nginx/varnish rather than the cache key algorithm - or i will not notice in the backend that there is a problem with using a query string.