1

要使用瘦服务器运行 Rails,我通常将thingem 添加到Gemfile,然后运行bundle install​​,然后重新启动我的开发服务器。

但是现在它不起作用,我该如何调试这种行为?

我的意思是这不起作用:

=> Booting WEBrick
=> Rails 3.1.3 application starting in development on http://0.0.0.0:3001
=> Call with -d to detach
=> Ctrl-C to shutdown server

我正在使用Zeusgem,这有关系吗?我重新启动了zeus服务器。

4

3 回答 3

3

这是我的 Rails 版本的问题,更新到3.2.13现在它可以工作了,也许问题是其他问题,但该更新解决了问题。

于 2013-05-19T23:48:29.860 回答
2

我用瘦和宙斯,所以也许我可以帮忙。在你的Gemile放薄中:development

group :development do
  gem 'thin'
end

它应该被自动拾取。但是,有时我必须一起重新启动 zeus。所以停止 zeus control-c,在它退出后,运行zeus start,然后当 zeus 屏幕上的服务器为绿色时,运行zeus server

按顺序尝试一下,看看是否适合您

还要确保 zeus 不在您的Gemfile. 如果您使用rvm只需将其安装在您的global gemset. Bundler 不应该使用 zeus。

于 2013-05-19T22:37:20.433 回答
1

编辑:刚刚看到自我答案,但我将解释为什么它仍然有效。

使用 Thin 作为 Rails 服务器适用于较新版本的 Rails (3.2+)

但是,查看rails server您正在运行 Rails 3.1.3 的输出。我不认为在那个版本中使用thin了 for 。rails server

在您的 Rails 版本中,您可能需要明确调用thin,而不是假设rails server会弄明白。

我的建议是使用 Procfile(请参阅开发和部署的良好指南,并设置您的web进程以运行thin而不是 `rails 服务器)。使用 foreman / a Procfile,您不必担心需要使用哪个服务器,或者需要启动哪些其他服务(redis、memcached 等)。另外,如果您部署到 Heroku,则无论如何都需要 Procfile。

于 2013-05-20T00:42:59.460 回答