繁体   English   中英

使用Rails应用程序登录时子域之间的InvalidAuthenticityToken

[英]InvalidAuthenticityToken between subdomains when logging in with Rails app

我刚刚在secure.mydomain.com上添加了SSL。 有人登录时,他们从主(www)子域上的表单POST到安全子域。 这导致生成InvalidAuthenticityToken错误。

我读到有必要在子域之间共享会话数据。 为此,我已经添加了:

config.action_controller.session = { :domain => '.mydomain.com' }

配置/环境/production.rb。 不幸的是,这并没有解决问题。

谢谢你的帮助!

如果您正在使用Rails 3,则希望您在config/initializers/session_store.rb进行此更改。

Rails.application.config.session_store :cookie_store, {
  :key => '[my key]',
  :domain => '.example.com'
}

放手 如果仍然无法正常工作,请在浏览器中检查Cookie,以查看其是否具有任何特殊的域设置。 这将有助于缩小问题的根源是:/

我认为您的应用程序布局中缺少此行

<%= csrf_meta_tags %>

您最近是怎么进行此更改的? 您的浏览器可能仍然具有旧的Cookie,因此您需要先删除旧的Cookie,然后才能注意到行为有所变化。

只是把它扔在那里:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM