2015-02-24 52 views
1

Rails noob here。我正在尝试通过Michael Hartl的Ruby on Rails教程,但每次运行rails服务器时,它都会退出并显示一个SocketError。我能够在上周末使用无线网络从一家初创公司运行服务器,所以我猜测它与我的互联网连接/防火墙有关?我今天下午也在图书馆的服务器上遇到了同样的问题。Rails服务器保持退出(SocketError)

任何帮助表示赞赏!提前致谢。

=> Booting WEBrick 
=> Rails 4.2.0 application starting in development on http://localhost:3000 
=> Run `rails server -h` for more startup options 
=> Ctrl-C to shutdown server 
[2015-02-23 22:33:11] INFO WEBrick 1.3.1 
[2015-02-23 22:33:11] INFO ruby 2.2.0 (2014-12-25) [x86_64-darwin14] 
Exiting 
/Users/awo/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/socket.rb:232:in `getaddrinfo': getaddrinfo: nodename nor servname provided, or not known (SocketError) 

回答

0

首先,你需要确定轨服务器的端口ID,因此下面的命令运行,给PID的列表,它在3000端口

lsof -wni tcp:3000 

在PID列中的数字杀死进程运行:

kill -9 PID 
+0

我试过了,它没有显示任何东西。 – shadyacres 2015-02-24 18:28:25

+0

你使用哪个操作系统? – 2015-02-25 03:28:17

+0

OSX Yosemite 10.10.2 – shadyacres 2015-02-26 05:15:18

3

我最近有同样的问题,这是我加入127.0.0.1 localhost记录到private/etc/hosts文件来解决

2

我过去曾经与我的主机文件混淆过,删除并创建一个新的默认文件(包括本地主机)似乎有诀窍。有我从here

## 
## 
# Host Database 
# 
# localhost is used to configure the loopback interface 
# when the system is booting. Do not change this entry. 
## 
127.0.0.1 localhost 
255.255.255.255 broadcasthost 
::1 localhost 
fe80::1%lo0 localhost 

我想的路径是搞砸了还是有一些忍者空格潜伏在我的/私营/ etc/hosts文件。