Posiadam środowisko postoju i produkcji na mojej aplikacji szynowej 3.1rc6, która korzysta z subdomen. Kupiłem i skonfigurowałem różne nazwy domen dla tych środowisk, ponieważ domyślnie coś-something.herokuapp.com nie ładnie gra z subdomenami.Skonfigurować session_store.rb do obsługi przemieszczania i produkcji?
Kiedy ustawić session_store.rb do tego dla jednego środowiska, wszystko działa prawidłowo:
AppName::Application.config.session_store :cookie_store, :key => '_sample_app_session' , :domain => '.mystagingdomain.co.uk'
Ale nie wydaje się dodawać w sposób warunkowy, aby umożliwić nazw domen specyficzne dla środowiska.
Próbowałem
AppName::Application.config.session_store :cookie_store, :key => '_sample_app_session' , :domain => '.mystagingdomain.co.uk' if Rails.env.staging?
AppName::Application.config.session_store :cookie_store, :key => '_sample_app_session' , :domain => '.myproductiondomain.com' if Rails.env.production?
który nie działa.
Pękanie, dziękuję bardzo. – snowangel
Myślałem, że dodam tutaj, ponieważ ta odpowiedź pomogła mi. Jeśli tworzysz z domeną pomocniczą lvh.me dla twoich poddomen, to jest interpretowane przez DOMAIN_REGEXP jako TLD, więc nie będzie naśladować example.com, zamiast tego zachowuje się jak example.com.au, więc musisz przejść tld_length of 1 [Źródło Github] (https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/middleware/cookies.rb#L103) – toxaq