Как перенести куки через nginx?



@Romo4ka_eto_ia

Здравствуйте, есть 2 сайта: sub.domain.ru и domain.ru, оба стоят на одной машине на nginx. Нужно чтобы при заходе на любой из сайтов, куки были одинаковые. Например сайт sub.domain.ru поставил куки session. Человек перешел на сайт domain.ru и эти же куки были там.


Решения вопроса 1



@shurshur

Это вообще-то не к nginx вопрос. Решение о том, какие куки принимать в рассмотрение и передать в запросе к тому или иному домену, принимает браузер, и он должен это делать в соответствии с RFC 6265 (не путать с устаревшими RFC 2109, 2965, там есть отличия).

Если коротко, то sub.domain.com может поставить куку как на sub.domain.com, так и просто на domain.com (в этом случае она будет также действовать на все поддомены одного уровня с sub.domain.com). Но domain.com не может поставить куку на домен com, потому что в домене должна быть минимум одна точка (такая защита).

Для экспериментов можно поиграться с куками вот в этой песочнице с субдоменами: https://scripts.cmbuckley.co.uk/cookies.php и посмотреть

Комментировать

Ответы на вопрос 2



@ivankprod

Смотрите здесь:
https://qna.habr.com/q/488123



@pro100chel

Не надо это делать через nginx.

Достаточно указать нужные параметры при установки cookie. (Домен *.domain.ru). В этом случае кука поставится для основного домена или для поддоменов.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *