2010-08-03 65 views
1

运行Ubuntu Server 10.04,Rails 2.3.4和Webrick 1.3.1;我们的Rails应用程序时,通过script/server -e production叫,而是试图通过与-d标志调用它来测试它作为一个守护进程将产生以下输出运行良好:Webrick未能作为守护进程运行,没有错误信息

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

没有在日志中产生的,和其他的Rails应用程序将运行分离没有问题。

+0

是WEBrick服务器绑定:3000是否正确?它是否打开连接并等待,如果你'telnet localhost 3000'? – sleepynate 2010-08-03 15:01:26

+0

'ps aux | grep ruby​​'显示没有Webrick实例正在运行,所以不,它没有正确绑定(或者根本就没有运行) – Nick 2010-08-03 15:16:16

+0

是否有任何其他绑定到该端口? 'sudo lsof -i'应该有助于确定这一点。 – Brian 2010-08-03 16:10:35

回答

0

我的意思并不是要反对你选择Webrick作为生产服务器,也许我错过了你为什么选择Webrick的想法,但是你有没有考虑过其他的选择?我敢打赌你已经知道了所有这些,但Webrick是提供的ruby服务器,也是最慢的ruby服务器选择。

一些最流行的生产服务器的选择是:

由于配置,速度和功能简单,乘客可能是现在最流行的生产选择。

如果Webrick有一个特定的用例比其他服务器选择更好,那么我很乐意知道。

3

我假设你正在运行在WEBrick端口3000

 
>>$ sudo netstat -anp | grep 3000 
tcp  0 0 0.0.0.0:3000  0.0.0.0:*   LISTEN  8822/ruby  
>>$ sudo kill -9 8822