Multipule Map modules

Francis Daly francis at
Mon Nov 7 22:12:37 UTC 2011

On Mon, Nov 07, 2011 at 03:54:24PM -0500, token wrote:

Hi there,

> What i would like to do is like Apache is to use multiple map files and
> get the vars form them
> i have tried the following and can only get one value `$variable1`
> what is a rewrite to get `$variable1` and `$variable2` in one rewrite
> rewrite ^(^\/*)/(.*)$  /index.php?key1=$variable1&key2=$variable2 last;

I confess I'm not sure exactly what it is you are trying to do.

For certain urls, grab parts of the url and send them as-is within
QUERY_STRING to a php-processor? (In which case: doing the grabbing in
the location definition is probably easiest.)

Or grab parts of the url, and set other values in QUERY_STRING based
on the url parts? (In which case, matching on $uri at server level and
using the map-ped value within the location block is probably easiest.)

Or maybe something else?

> map $uri $variable1 {
> default 11;
> /sub 7;
> }
> map $uri $variable2 {
> default 78;
> /pep 23;
> }

The map documentation is at
and there's an example of if/set/map in the thread at,194480

And there are examples of php-without-rewrite around as well -- in the
location block, set "fastcgi_param SCRIPT_FILENAME" explicitly, as well
as fastcgi_pass.

Good luck,

Francis Daly        francis at

More information about the nginx mailing list