Tôi có một dàn dựng và môi trường sản xuất trên ứng dụng đường ray 3.1rc6 sử dụng tên miền phụ. Tôi đã mua và cấu hình các tên miền khác nhau cho các môi trường này, bởi vì mặc định something-something.herokuapp.com không chơi độc đáo với các tên miền phụ.Định cấu hình session_store.rb để xử lý dàn dựng và sản xuất?
Khi tôi đặt session_store.rb này cho một môi trường, tất cả mọi thứ hoạt động tốt:
AppName::Application.config.session_store :cookie_store, :key => '_sample_app_session' , :domain => '.mystagingdomain.co.uk'
Nhưng tôi dường như không thể thêm vào một điều kiện để cho phép các tên miền với môi trường cụ thể.
Tôi đã thử
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?
mà không hoạt động.
Bẻ khóa, cảm ơn rất nhiều. – snowangel
Nghĩ rằng tôi sẽ thêm vào đây vì câu trả lời này đã giúp tôi. Nếu bạn đang phát triển với tên miền trợ giúp lvh.me cho tên miền phụ của bạn, nó được diễn giải qua DOMAIN_REGEXP như là một TLD và do đó sẽ không bắt chước example.com, thay vào đó nó hoạt động như example.com.au vì vậy bạn cần phải vượt qua tld_length của 1 [Github source] (https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/middleware/cookies.rb#L103) – toxaq