@olezhenka

Как настроить условие существования куки на nginx для переадресации?

Мне нужны следующие условия:
Если пользователь запрашивает адрес сайта "/" и куки sid существует, то сделать переадресацию на "/account/"
Если пользователь запрашивает любою другую страницу и куки sid НЕ существует, то сделать переадресацию на "/"

Вот такая конфигурация у меня вышла:
location ~* ^/$ {
                if ($cookie_sid != "") {
                        rewrite ^(.*)$ /account/ last;
                }
        }

        location / {
                if ($cookie_sid = "") {
                        rewrite ^(.*)$ / break;
                }
                try_files $uri $uri/ /index.html;
                expires 7d;
        }

В итоге, когда пользователь идет на "/" и sid есть он меня сначала на "/account/" а затем сразу на "/".
А когда sid нету то вообще ошибка.
А может эту обработку вообще на nodejs перенести попробовать?
  • Вопрос задан
  • 248 просмотров
Решения вопроса 1
@BorisKorobkov
Web developer
if работает не так, как вам кажется
https://www.nginx.com/resources/wiki/start/topics/...

Используйте map
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы