我无法使 enable :sessions 持续存在于 passenger/apache 上托管的简单 Sinatra 应用程序。我将 session[:authorized] 的状态存储在 cookie 中。当托管在 Rack::Handler::Mongrel 上时,它在本地工作,但我似乎无法在 passenger 上获得相同的行为。
我尝试了两种启用 session 的方法,这两种方法都不适用于 passenger/apache 安装 启用: session
和
使用 Rack::Session::Pool, :domain => 'example.com', :expire_after => 60 * 60 * 24 * 365
关于如何修复的任何想法?
最佳答案
虽然我们没有使用 Apache/Passenger(在开发模式下),但我们遇到了类似的事情。我们是这样解决的——
在您的 Sinatra 应用程序中注释掉 Rack::Session 命令。在 config.ru 文件中进行。并且只在您的 sinatra 应用程序中启用 :sessions。
这应该有效。
关于ruby - Sinatra 启用 :sessions not working on passenger/apache,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2100015/