【问题标题】:Changed my domain from www to non-www, and now my cookies are no longer being created将我的域从 www 更改为非 www,现在不再创建我的 cookie
【发布时间】:2020-02-28 07:47:44
【问题描述】:

我有一个 Rails 6 应用程序,它使用 cookie 来存储 remember me 令牌。在过去的几个月里,该域强制使用www.,但我决定摆脱它并将非www. 设为默认值。

remember me 令牌现在不再有效。登录时,用户被重定向到根目录,就好像他们已经登录一样,但他们不是。 remember me cookie 永远不会被创建。日志中根本没有错误。就好像一切都按原样发生了。 直接设置 cookie,没有任何事先操作,也不起作用。

令牌是使用:cookies.encrypted.permanent[:remember_token] = token 创建的。

它在开发中运行良好,之前在www. 域上运行良好。

我尝试在我的application.rb 中设置 cookie 域,如下所示:Rails.application.config.session_store :cookie_store, key: "_app_name", domain: :all,但完全没有效果。

【问题讨论】:

    标签: ruby-on-rails cookies


    【解决方案1】:

    过去的规则是,如果您更改了会话 cookie 域,您还应该更改 cookie 的名称,以确保没有意外重叠(如下所述:https://sam-low.com/ruby/rails/cookie/changing-rails-session-cookie-domain.html)。

    我不确定 100% 是否仍然如此,但它的工作量相对较低,而且 IMO 绝对值得一试。

    【讨论】:

      猜你喜欢
      • 2018-04-07
      • 2013-09-18
      • 1970-01-01
      • 2014-03-04
      • 1970-01-01
      • 2010-12-10
      • 1970-01-01
      • 2023-03-16
      • 2016-08-11
      相关资源
      最近更新 更多