How to sort parameters in nginx cache key

Valentin V. Bartenev vbart at
Tue Sep 16 22:04:44 UTC 2014

On Tuesday 16 September 2014 14:32:41 Wei Chen wrote:
> Hi:
> We are experiencing low cache hit ratio in Nginx server. It turned out
> that one reason is client may be sending the same requests with
> parameters in different orders.
> e.g.
> foo?p1=a&p2=b&p3=c
> foo?p2=b&p1=a&p3=c
> And our cache key is set as
> proxy_cache_key $uri$is_args$args;
> It is not feasible to change all clients to resort their urls. Is
> there any way in Nginx to address that?

You can sort them manually:

   proxy_cache_key $uri$is_args$arg_p1&$arg_p2&$arg_p3;

 wbr, Valentin V. Bartenev

More information about the nginx mailing list