部署在heroku上时Rack / Sinatra会话中断 - E13

时间:2012-01-26 20:50:04

标签: cookies heroku sinatra rack

我有一个基本的Sinatra应用程序部署到Heroku。我在应用程序中“启用:会话”,除了设置/访问会话数据外,没有其他任何操作。该应用程序运行良好,但如果我打开浏览器会话,并重新部署到heroku,那么当我使用相同的浏览器会话时,我得到“错误H13(连接关闭而没有响应)”和浏览器中的应用程序错误。我无法找到有关错误的更多信息。

如果我删除了域的Cookie,那么该应用就会重新开始工作。

所以,再次,它是:1)部署应用程序,在新的浏览器会话中使用应用程序,一切都很好。 2)'git push heroku master'3)使用相同的浏览器,E13

尝试设置Rack :: Session :: Cookie的秘密明确但没有区别。

还在本地以生产模式运行应用程序,但无法复制此内容。

如果他们在部署时碰巧使用应用程序,我宁可不要破坏任何人的日子。还有什么想法可以追踪到这一点吗?

2 个答案:

答案 0 :(得分:1)

您还需要设置会话密码:

configure do
  enable :sessions
  set :session_secret, ENV['SESSION_SECRET'] ||= 'super secret'
end

答案 1 :(得分:0)

这是关于处理无效会话摘要的方式的Rack 1.4.0错误。通过升级到Rack 1.4.1解决了github.com/rack/rack/issues/299问题