1

运行带有 Rails 2.3.4 和 Webrick 1.3.1 的 Ubuntu Server 10.04;我们的 rails 应用程序在 via 调用时运行良好script/server -e production,但尝试通过使用标志调用它作为守护进程对其进行测试会-d产生以下输出:

=> Booting WEBrick
=> Rails 2.3.4 application starting on http://0.0.0.0:3000

日志中没有产生任何内容,其他 Rails 应用程序将毫无问题地独立运行。

4

3 回答 3

3

我假设您正在端口 3000 中运行 Webrick

>>$ sudo netstat -anp | grep 3000
tcp 0 0 0.0.0.0:3000 0.0.0.0:* 听      8822 /ruby       
>>$ sudo kill -9 8822
于 2010-12-29T18:09:04.323 回答
0

我并不是要与您选择 Webrick 作为生产服务器相矛盾,也许我对您选择 Webrick 的原因有些遗漏,但是您是否考虑过其他替代方案?我敢打赌你已经知道这一切,但 Webrick 是提供的 ruby​​ 服务器,它也是最慢的 ruby​​ 服务器选择。

一些最受欢迎的生产服务器选择是:

由于其简单的配置、速度和功能,Passenger 可能是现在最受欢迎的生产选择。

如果 Webrick 有一个特定的用例使它比任何其他服务器选择更好,我很想知道。

于 2010-08-03T17:00:52.703 回答
0

您可以在此处添加补丁以启用错误日志:https ://github.com/rails/rails/blob/3-2-stable/activesupport/lib/active_support/core_ext/process/daemon.rb#L16

unless noclose
  STDIN.reopen "/dev/null"       # Free file descriptors and
  STDOUT.reopen "/dev/null", "a" # point them somewhere sensible.
  STDERR.reopen '/tmp/rails_daemon_err.log', 'a'
end

现在,当您使用 启动 rails 服务器时-d,错误日志将附加到/tmp/rails_daemon.log.

于 2018-03-21T11:48:40.887 回答