Принудительно сбрасывать сеанс при добавлении пользовательского домена в приложение Rails? - PullRequest
0 голосов
/ 17 марта 2011

Когда я добавил это к своему staging.rb:

config.action_controller.session = {:domain => '.mysite.com'}

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

Единственный способ заставить это работать - вручную удалить куки в браузере.

Как мне сбросить куки всех пользователей, когда я делаю подобные изменения в Rails? Есть ли стандартный подход?

1 Ответ

1 голос
/ 17 марта 2011

Вы должны иметь возможность аннулировать все сеансы, изменив секрет, используемый для кодирования сеансов на основе файлов cookie.Это можно назначить так:

config.action_controller.session = {
  :domain => '.mysite.com',
  :secret => 'somethingreallyrandomnotactuallythis'
}

В Rails 3 это делается в config/initializers/secret_token.rb:

My::Application.config.secret_token = 'somethingreallyrandomnotactuallythis'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...