본문 바로가기
ERRORS

[ERRORS][Node] node / express 서버 오류 / address already in use

by Jelly 젤리 2023. 1. 12.

ADDRINUSE

address already in use 해결 방법

 

서버를 사용하다보면 아래와 같은 오류가 종종 보인다.

서버가 나도 모르게 이미 구동되어있는 상태이다.

 

보통 서버 연결 후, 서버를 끊고 싶을 때 윈도우는 Ctrl + C / 맥에서는 Cmd  + C를 사용한다.

잘못 눌러서 Ctrl + Z를 사용하는 경우, 서버는 그대로 돌아가는 중이고 터미널에서는 나와진다.

 

이럴 떄 간단하게 해결하는 방법은 두 가지가 있다.

 

첫 번째는 port 번호를 변경하여 서버를 재구동하는 법이다.

그러나 이 방법은 백그라운드에서 기존 서버의 프로세스가 계속 돌고 있을 수 있다는 단점이 있다.

 

이 때 간단하게 

killall node

명령어로 구동되고있는 node.js의 모든 인스턴스를 강제종료 할 수 있다.

 


 

만약 이 killall node 명령어가 듣지 않는다면, 

터미널에서 내가 사용한 포트번호를 가지고 돌아가는 프로세스를 확인할 수 있다.

lsof -i tcp:3702

 

이 때 PID(프로세스 아이디)를 가지고 

kill -9 PID

프로세스를 다운시키면 

 

터미널에서 요렇게 killed 된 것을 볼 수 있고, 이후로는 해당 포트로 서버를 재시작하면 정상적으로 사용 가능하다!

728x90

댓글