Multipule Map modules

Francis Daly francis at daoine.org
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 http://wiki.nginx.org/HttpMapModule#map
and there's an example of if/set/map in the thread at
http://forum.nginx.org/read.php?2,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,

	f
-- 
Francis Daly        francis at daoine.org



More information about the nginx mailing list