Ruby on rails 使用Rails 3.2.6和authlogic 3.1.3的会话Nil

Ruby on rails 使用Rails 3.2.6和authlogic 3.1.3的会话Nil,ruby-on-rails,ruby,authlogic,Ruby On Rails,Ruby,Authlogic,在我们的生产站点上,我们使用rails 3.2.3和authlogic 3.1.0。我可以使用任何浏览器登录rails应用程序。我们目前正在迁移到rails 3.2.6,并升级到使用资产管道,因此我们也将authlogic升级到3.1.3 问题是,我可以登录到运行rails 3.2.3和authlogic 3.1.0的生产环境中,但当在功能分支上本地升级到rails 3.2.6和authlogic 3.1.3时,在google chrome和mobile safari上的登录都不起作用,并且由于

在我们的生产站点上,我们使用rails 3.2.3和authlogic 3.1.0。我可以使用任何浏览器登录rails应用程序。我们目前正在迁移到rails 3.2.6,并升级到使用资产管道,因此我们也将authlogic升级到3.1.3

问题是,我可以登录到运行rails 3.2.3和authlogic 3.1.0的生产环境中,但当在功能分支上本地升级到rails 3.2.6和authlogic 3.1.3时,在google chrome和mobile safari上的登录都不起作用,并且由于无会话,它会重定向,而在safari和firefox上本地登录则起作用。我已经检查,所有测试设备都接受cookies。唯一的问题似乎出现在rails 3.2.3/authlogic 3.1.0和rails 3.2.6/authlogic 3.1.3之间,因为除了gem版本之外,没有任何代码库发生更改


更新:在本地服务器日志中,我在google chrome和mobile safari上都收到:警告:无法验证CSRF令牌的真实性,但在safari上我没有csrf_meta_标记正在应用中。haml

在不深入讨论这一点的情况下,您是否尝试禁用csrf令牌验证功能


在您的更新中,您提到日志中有关于CSRF的警告,这使我相信authlogic的rails将请求标记为伪造。

在不深入讨论这一点的情况下,您是否尝试禁用CSRF令牌验证功能


在您的更新中,您提到日志中有关于CSRF的警告,这使我相信authlogic的rails将请求标记为伪造。

在返回代码提交后,错误源于会话\u store.rb初始值设定项中的更改。cookie域未正确设置,因此,它导致浏览器而不是应用程序本身将会话重置为零。在config/initializers/session_store.rb中更改以下行后:

Application.config.session_store:cookie_store,:key=>\u troopswap_session,:domain=>'*domain.tld*'

Application.config.session\u store:cookie\u store,:key=>\u troopswap\u session,:domain=>:all


Cookie没有被删除,我可以登录。

返回代码提交后,错误源于会话\u store.rb初始值设定项中的更改。cookie域未正确设置,因此,它导致浏览器而不是应用程序本身将会话重置为零。在config/initializers/session_store.rb中更改以下行后:

Application.config.session_store:cookie_store,:key=>\u troopswap_session,:domain=>'*domain.tld*'

Application.config.session\u store:cookie\u store,:key=>\u troopswap\u session,:domain=>:all


Cookie没有被删除,我可以登录。

我在application\u controller.rb中注释掉了protect\u from\u fackery,正如预期的那样,错误不再出现在日志文件中,然而,它似乎仍然将会话重置为nil并重定向回登录页面,而没有任何额外的代码示例。我无法提供任何额外的支持或建议。我可能会尝试从简单开始跟踪代码更改,因为工作或删除authlogic的版本,或者确保从authlogics Github repoI运行最新的ode库。我在应用程序\u controller.rb中注释掉了protect_from_fagery,正如预期的那样,错误不再出现在日志文件中,然而,它似乎仍然将会话重置为nil并重定向回登录页面,而没有任何额外的代码示例。我无法提供任何额外的支持或建议。我可能会尝试从简单开始跟踪代码更改,因为工作或删除authlogic版本,或者确保从authlogics Github repo运行最新的ode库