Можно ли использовать переменную с кодом перенаправления в конфигурации Nginx? - PullRequest
0 голосов
/ 02 декабря 2018

В моей конфигурации Nginx у меня есть правила перенаправления, подобные этим:

map $uri $target {
    '/test123' 'https://www.somedomain.com/test456';
}
map $uri $target_code {
    '/test123' 301;
}
server {
    listen 80 default;

    if ($target_code = 301) {
        return 301 $target;
    }
    if ($target_code = 302) {
        return 302 $target;
    }
}

, и это хорошо работает.Но что касается Если это зло

Я хочу сделать следующее заявление:

server {
    listen 80 default;

    return $target_code $target;
}

Но при перезапуске Nginx возвращает ошибку nginx: [emerg] invalid return code "$target_code" in /etc/nginx/nginx.conf

Есть ли возможность использовать переменную таким образом?Или, может быть, есть другой способ сделать это без каких-либо утверждений if?

...