【发布时间】:2016-01-18 00:48:40
【问题描述】:
我有以下设置:
通过 nginx 代理的 Sinatra 应用,在 nginx-configuration 中定义了重定向:
http://www.example.com/api 到 http://api.example.com
我通过以下方式初始化会话的使用:
use Rack::Session::Pool
现在我可以通过以下方式存储和检索会话数据:
get '/make_it_so' do
session[:data] = 'yes indeed.'
end
get '/what_gives' do
session[:data]
end
http://www.example.com/what_gives 重新加载 3 到 5 次后,我可以看到会话数据,然后它突然消失为零。
有人可以帮忙吗?
类似的问题是:
【问题讨论】:
-
您的 Sinatra 应用程序运行情况如何?
-
你的意思是:“rerun -- unicorn -c unicorn.rb -E test”?顺便说一句,当我使用答案 stackoverflow.com/a/19251746/2767626(基于 Rack::Session:Cookie)时,一切正常!
-
使用
rerun可以解释它。如果rerun出于某种原因重新启动您的应用程序,那么基于内存的会话(在Rack::Session::Pool中)将会丢失。基于 Cookie 的会话仍然有效。目录中是否有任何更改会导致rerun重新启动应用程序?