Nginx - как взять значение из заголовка и установить его в cookie? - PullRequest
0 голосов
/ 29 ноября 2018

В nginx мне нужно проверить, есть ли у клиента cookie-файл jsessionid, затем прокси все для tomcat как есть, но если нет cookie-файла, тогда взять значение из заголовка x-auth-token и установить его в cookie-файл jsessionid, и после этогопрокси все для кота.

1 Ответ

0 голосов
/ 29 ноября 2018

Попробуйте:

location / {
    if ($cookie_JSESSIONID = "") {
        add_header Set-Cookie JSESSIONID=$http_x_auth_token;
    }
    proxy_pass <proto://tomcat_server_address:port>;
}

Если ваш домен tomcat отличается от домена сайта, вам может потребоваться добавить дополнительные параметры перед параметром proxy_pass:

proxy_set_header Host <tomcat_domain>;
proxy_cookie_domain <tomcat_domain> <site_domain>;
...