How can I cache the page by the complete querystring
Try the following:
This should result in any changes to querystring parameters causing a new version of the page to be cached. Keep in mind that this can significantly increase the amount of memory used for caching, depending on how many querystring parameters you’re using.
Note: "*" is not recommended - it is best to use a list of params that your page truly varies by.