Nella mia app rails 3.1rc6, che utilizza sottodomini, dispongo di un ambiente di produzione e di produzione. Ho acquistato e configurato nomi di domini diversi per questi ambienti, perché il valore predefinito qualcosa-something.herokuapp.com non funziona bene con i sottodomini.Configurare session_store.rb per gestire la gestione temporanea e la produzione?
Quando ho creato session_store.rb a questo per un unico ambiente, tutto funziona bene:
AppName::Application.config.session_store :cookie_store, :key => '_sample_app_session' , :domain => '.mystagingdomain.co.uk'
Ma io non riesco a aggiungere in un condizionale per consentire i nomi di dominio specifico per l'ambiente.
Ho provato
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?
che non funziona.
Cracking, grazie mille. – snowangel
Pensavo di aggiungere qui come questa risposta mi ha aiutato. Se stai sviluppando con il dominio helper lvh.me per i tuoi sottodomini, viene interpretato tramite DOMAIN_REGEXP come TLD e quindi non imiterà example.com, invece si comporta come example.com.au quindi devi passare tld_length di 1 [fonte Github] (https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/middleware/cookies.rb#L103) – toxaq