【问题标题】:Rails 3 session resets when redirecting to custom domain page but session stays for heroku default domain重定向到自定义域页面时 Rails 3 会话重置,但会话保留为 heroku 默认域
【发布时间】:2012-04-15 02:18:49
【问题描述】:

我正在使用 Rails 3 的会话变量来存储一些数据。 例如。 session[:token] = user_token

如果我通过 heroku 域访问我的应用程序,则此会话变量存在于单个会话中。 (example.heroku.com)但是,如果我通过自定义域访问,(www.example.com) 每次我重定向到域中的另一个页面时,会话变量都会清除。

我不知道是什么问题 我尝试使用 :cookie_store 和 :active_record_store 来实现它,但同样的问题仍然存在。我什至尝试为 :cookie_store 设置 :domain

MyApp::Application.config.session_store :cookie_store, :key => '_my_app_session', :domain => :all

还没有运气。如果我错过了任何设置,请告诉我。

【问题讨论】:

    标签: ruby-on-rails session heroku


    【解决方案1】:

    在这种情况下,您需要设置一个默认域。 ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS[:session_domain] = '.example.com'

    更多详情请阅读此博客Cookie-Handling

    【讨论】:

    • 嗯,这不适用于 Rails 3。我得到 /app/config/environment.rb:7:in `': uninitialized constant ActionController::CgiRequest (名称错误)
    • 我找到了一个与您的问题相关的答案。 stackoverflow.com/questions/5123325/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    相关资源
    最近更新 更多