Ignore utm_* values with varnish?

Pinakee BIswas pinakee at waltzz.com
Thu Oct 12 11:56:09 UTC 2017


Hi,

We are using varnish 4.1.2 for our website caching. We use bunch of 
standard query parameters (like utm*) to track the channels for our 
website visits - this is quite standard in the web world.

Can I 'ignore' query string variables before pulling matching objects 
from the cache, but not actually remove them from the URL to the end-user?

For example, all the marketing|utm_source|,|utm_campaign|,|utm_*|values 
don't change the content of the page, they just vary a lot from campaign 
to campaign and are used by all of our client-side tracking.

So this also means that the URL can't change on the client side, but it 
should somehow be 'normalized' in the cache.

Essentially I want all of these...

|http://example.com/page/?utm_source=google|

|http://example.com/page/?utm_source=facebook&utm_content=123|

|http://example.com/page/?utm_campaign=usa|

... to all access HIT the cache for|http://example.com/page/|

However, this URL would cause a MISS (because the param is not a utm_* 
param)

|http://example.com/page/?utm_source=google&variation=5|

Would trigger the cache for

|http://example.com/page/?variation=5|

Also, keeping in mind that the URL the user sees must remain the same, I 
can't redirect to something without params or any kind of solution like 
that.

Would appreciate if you could help me with the above to increase the 
performance of our site.

Thanks,

Pinakee

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-misc/attachments/20171012/84125d93/attachment-0001.html>


More information about the varnish-misc mailing list