Re: Перенести куки с домена на домен

Илья Шипицин chipitsine at gmail.com
Fri Apr 11 02:07:52 UTC 2014


так будет работать.
в случае кодов 30X браузер выставляет куку на тот домен, который видит
в Location

да, при желании можно сбрасывать чужие авторизационные куки. читать их нельзя.

насчет add_header для редиректов я действительно не учел, у нас стоит
самодельный патч, который разрешает хедеры на любые коды.

11 апреля 2014 г., 4:39 пользователь Валентин Бартенев
<vbart at nginx.com> написал:
> On Friday 11 April 2014 01:26:38 Илья Шипицин wrote:
>> допустим, что сессионная кука называется "session", тогда можно сделать так
>>
>>
>>     server {
>>
>>         server_name www.old.ru;
>>         location / {
>>              rewrite ^/(.*)$ http://www.new.ru/$1 permanent;
>>              add_header Set-Cookie "session=$cookie_session;";
>>         }
>>     }
>>
>>
>>
>> работать будет, но возникают вопросы. у вас кука выставляется
>> сессионная ? если нет, то, боюсь, нет механизмов, чтобы узнать ее
>> Expire.
>> ну или можно задать в add_header
>>
>> аналогично модификаторы httponly, secure, path, domain
>>
>
> Так работать разумеется не будет.  Нельзя задавать куки для
> чужого домена, иначе это была бы большая дыра в безопасности.
>
> Да и add_header не работает для редиректов.
>
> Содержимое куки нужно передать как-то иначе, скажем в параметрах
> редиректа:
>
>   server {
>       server_name old.example.org;
>       rewrite ^ http://new.example.org$uri?session=$session_cookie;
>   }
>
> Второй способ - это передать через CORS.
>
> --
> Валентин Бартенев
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru


Подробная информация о списке рассылки nginx-ru