无法打开rails服务器

我不知道我做了什么。 我想我更新了我的Ruby on Rails。 更新后,运行$ rails服务器时总是出错。

输出是

ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/utils.rb:73:in `initialize': Address already in use - bind(2) (Errno::EADDRINUSE) 

我会重新启动控制台并运行rails服务器,它会工作几分钟,但它会停止响应,如果我重新启动rails服务器,它会再次给我错误。 我尝试在不同的端口(rails s -p 9191)上运行,它给了我同样的问题。

什么想法我做错了什么? Thnx家伙

在其他端口上运行它:

 rails s -p 3001 

所以它将加载到localhost:3001

或杀死所有ruby进程:

 killall ruby 

然后运行rails s

我认为你的rails服务器在关闭后会继续运行。 你可以尝试

 ps aux | grep ruby 

看到pid,然后杀死那个pid

 kill -9  

现在您可以使用重启服务器了

 rails s 

注意:从下次开始尝试使用Ctrl D来终止rails服务器。 这可能有所帮助

我也遇到了问题,因为ruby实例没有正确终止。我们可以通过pids终止在后台运行的进程。

 lsof -wni tcp:3000 

它显示ruby的所有正在运行的pid。并终止该pid。

 kill -9 PID 

或者使用

 killall ruby