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