Multiple nginx rewrite rule, with unknown count of parameters

35 Views Asked by At

I have GET request e.g.

example.com/aaa/bbb/ccc/ddd/eee/fff/ggg/hhh/aaa.png

and I want output like:

example.com/?p1=aaa&p2=bbb&p3=ccc&p4=ddd&p5=eee&p6=fff&p7=ggg&p8=hhh&p9=aaa.png

or something like this, so that I can get an array in php like:

$_GET = [
 0=>'aaa',
 1=>'bbb',
 2=>'ccc',
 3=>'ddd',
 4=>'eee',
 5=>'fff',
 6=>'ggg',
 7=>'hhh',
 8=>'aaa.png',
];

but I don`t want make this by explode("/") on URL string,i know also that I can make regex like:

^/(.*?)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/(.*)$

But I don`t want to limit myself to e.g. 9 parameters, I need help with make rewrite rule which will do it for infinity number of parameters.

I wrote regex that solving this case for string

/([^\/]+)+/m,

but i don`t know how to use it in nginx

0

There are 0 best solutions below