【问题标题】:Missing cookie in Rails 4Rails 4 中缺少 cookie
【发布时间】:2014-01-17 15:04:32
【问题描述】:

由于某种原因,我的应用程序上的会话 cookie 没有在生产中正确设置。这个问题似乎是一夜之间出现的,我想不到的变化。只涉及一个域。

当我在本地主机上运行开发中的应用程序时设置了会话 cookie,因此服务器发生了一些奇怪的事情。如果我检查服务器端的 cookie,它会给我一个列表,但浏览器中没有设置 cookie。此外,我可以在服务器端手动创建一个测试 cookie,它会显示在浏览器上。只有会话 cookie 没有显示。

我尝试将会话存储从 memcached 更改为 cookiestore,但这似乎没有帮助 - 仍然没有会话 cookie。所以我不认为是 session_store 代码。

将 Rails 4.0.2 和乘客 4.0.19 与它安装的任何版本的 nginx 一起使用。红宝石 1.9.3。任何帮助将不胜感激 - 我完全被难住了。

【问题讨论】:

  • 这也发生在我身上。如果您发现任何问题,请更新,我也会这样做。
  • 如果你愿意,可以和我聊天(我网站上的电子邮件地址)。想听听你的堆栈并尝试解决这个问题。
  • 将在一秒钟内提供完整的回复,但请看这里:github.com/phusion/passenger/pull/93

标签: ruby-on-rails cookies passenger session-cookies


【解决方案1】:

他们已经在 github repo 中修复了这个问题,并且随时都会发布。

无论如何,如果有人在 rails2 中,仍然有这个错误,或者不想更新乘客,我们可以修复它:

class ApplicationController < ActionController::Base

   after_filter :set_headers

   def set_headers
      response.headers["Date"] = "#{Time.now.utc}"
   end

end

更新

这是official post 解释发生了什么。

我刚刚将 Phusion Passenger gem 更新到 4.0.30。它非常简单,并且已修复此错误。 Oficial Instruction here

【讨论】:

    猜你喜欢
    • 2016-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-05
    • 1970-01-01
    • 2014-11-15
    • 1970-01-01
    相关资源
    最近更新 更多