我现在已经挣扎了一段时间,但却无法弄清楚为什么这不起作用。我使用Firefox / Firebug来查看在开发模式下创建的会话cookie,但是当我在Production中本地运行时,不会创建会话cookie。当然,当CSRF令牌不在会话cookie中并且抛出异常时,这会引起各种各样的悲痛。
显而易见的地方是在production.rb vs development.rb,因为所有其余的代码是相同的但是我在那里看不到任何错误,我将这两个文件与新创建的(测试)进行了比较rails app。
配置信息:
任何想法都表示赞赏。谢谢,艺术
答案 0 :(得分:0)
当我最近遇到相同的情况时,结果是错误配置的会话cookie域出现了问题。
查看应用程序随响应发送的HTTP标头。我想会尽可能地为会话cookie发送Set-Cookie
标头,但浏览器拒绝保存cookie,因为标头中指定的域不会match您的应用程序的实际生产域跑着。
要解决此问题,请修改会话存储配置中的域设置。
答案 1 :(得分:0)
不,这些都不是问题所在。它使用的是Rack :: Cached。我没有时间追踪它的原因,只是从我的构建中删除它可以解决问题,而无需做任何其他事情。希望我有时间进一步追踪这一点,以帮助你们。