如果对同一个变量名重复nginx中的map指令有什么危害吗?

时间:2013-04-09 22:06:43

标签: nginx

当我试用它时,后来的定义似乎生效了。问题是,这样做会产生意想不到的后果吗?

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
        }
    }
}

现在使用此配置,如果我尝试:

curl http://example.com
3
curl http://www.example.com
4

背景:我们使用它来为可选包含文件中的地图提供覆盖。因此,在定义映射之后,我们有一个* _override_map.conf的include指令。如果此文件存在并为同一个地图提供替代定义,那就是使用的内容而不是原始地图定义。

0 个答案:

没有答案