> Is it possible to ignore the presence of the question mark and the rest of the URL?
Yes.
https://www.varnish-cache.org/docs/trunk/faq/general.html
'How do I instruct varnish to ignore the query parameters and only cache one instance of an object?'
sub vcl_recv {
set req.url = regsub(req.url, "\?.*", "");
}