Is there any harm if the map directive in nginx is repeated for the same variable name?
jayesh_kapoor
nginx-forum at nginx.us
Thu Apr 11 17:11:52 UTC 2013
When I try it out, the definition that comes later seems to take effect. The
question is, are there unintended consequences of doing this?
http {
map $http_host $a {
hostnames;
default 1;
example.com 1;
*.example.com 2;
}
map $http_host $a {
hostnames;
default 3;
example.com 3;
*.example.com 4;
}
server {
server_name example.com *.example.com
location / {
echo $a
}
}
}
Now with this configuration if I try:
curl http://example.com
3
curl http://www.example.com
4
Background: We are using this to provide an override for a map in an
optional include file. So right after the map is defined, we have an include
directive for *_override_map.conf. If this file exists and provides an
alternate definition for the same map, then thats what gets used instead of
the original map definition.
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,238301,238301#msg-238301
More information about the nginx
mailing list