2011-06-13 5 views
1

10 번 중 9 번, 기본 레일 webrick 서버 또는 씬 서버 중 하나를 시작할 때마다 소켓 오류가 발생합니다. 나는 lsof | grep IPv4을해야하고 루비 프로세스를 찾은 다음 kill -9 PID를 찾아야합니다. 내가 항상 이렇게하고있는 것 같아. 영구적 인 해결책이없는거야? 그것은 b/c인가요? 때로는 컨트롤없이 터미널 창을 닫고 서버 인스턴스를 C'ing합니까?레일 서버를 시작하면 항상 소켓 오류가 발생합니다.

+0

특정 오류 메시지를 게시 할 수 있습니까? – jefflunt

답변

2

예, 서버 인스턴스를 종료하지 않았기 때문일 수 있습니다. 기본적으로 서버는 localhost:3000을 수신하므로 터미널을 종료 한 후에도 프로세스가 계속 실행 중이면 여전히 포트를 점유하고 있으므로 다른 서버를 시작하려고하면 실패합니다. 터미널 세션을 닫기 전에 더 이상 서버를 제어하지 마십시오. 더 이상 문제가 없어야합니다.

+0

많은 것으로 나타났습니다. 터미널이 죽었을 때 인스턴스를 죽이는 설정이 있었으면 좋겠다.하지만 슬프게도 ... control + C! – bjork24

0

레일을 사용할 수있는 경우 -px.이 x는 포트 번호 3000 또는 3001입니다. ctrl + c를 눌러 서버를 닫지 않으면 바인드 오류가 발생하지 않습니다. 또한 Ctrl 키를 사용하는 것이 좋습니다 + c를 눌러 서버를 닫습니다.

관련 문제