使用地图和邪恶的“如果”

我想知道我的configuration是否可以接受,因为我使用邪恶的“如果”。

我读了这个 – https://www.nginx.com/resources/wiki/start/topics/depth/ifisevil/

map $http_app_code $app_code { default "server-api-1"; ~app1 "server-api-1"; ~app2 "server-api-10"; ~app3 "server-api-21"; } location /getSite { if ($app_code = "server-api-1") { proxy_pass http://$app_code.dev.internal.com/api/v1/getSite; } if ($app_code = "server-api-10") { proxy_pass http://$app_code.dev.internal.com/api/v1/getSite; } if ($app_code = "server-api-21") { proxy_pass http://$app_code.dev.internal.com/api/v3/getSite; } } 

使用第二张map

 map $http_app_code $app_code { default "server-api-1"; ~app1 "server-api-1"; ~app2 "server-api-10"; ~app3 "server-api-21"; } map $app_code $app_version { server-api-1 v1; server-api-10 v1; server-api-21 v3; } location /getSite { proxy_pass http://$app_code.dev.internal.com/api/$app_version/getSite; }