机架会话在 Chrome 中丢失
Posted
技术标签:
【中文标题】机架会话在 Chrome 中丢失【英文标题】:Rack Sessions getting lost in Chrome 【发布时间】:2013-11-03 12:06:09 【问题描述】:我有一个非常简单的应用程序,托管在使用 Sinatra 构建的 EC2 上,在 nginx 后面提供了瘦身服务。问题在于,对于 Chrome,会话变量在 Sinatra 中会“丢失”。它不会在 Firefox 中发生。
这是使用 Rack::Session::Cookie。这和这个问题类似:Sinatra not persisting session with redirect on Chrome
如果您能提供任何有关如何在 Chrome 中解决此问题的见解,我们将不胜感激。
【问题讨论】:
我在使用 Chrome 时遇到了同样的问题(即适用于 Firefox、Safari)。你还记得这个问题吗? 【参考方案1】:确保您正在设置以下内容:
configure :development do
set(:session_secret, 'a random string that wont change')
end
configure :production do
set(:session_secret, '*&($)UIJH$(&*(&*(@(*)(!)))IUYA0984))')
end
configure do
enable :sessions
end
【讨论】:
是的,我有一个秘密集并启用了会话。就像我说的:会话正在运行,但在 Chrome 中,会话信息会在某些请求时消失。我认为这与 chrome 处理 cookie 有关。以上是关于机架会话在 Chrome 中丢失的主要内容,如果未能解决你的问题,请参考以下文章
Chrome 和 IE 不发送 ASP.NET_SessionID - 即会话变量丢失?