✔️어떤 문제가 있었는지

Node.js -> 터미널 명령어로 port를 열던 중 이런 오류가 발생했다.

$ node app.js
node:events:491
      throw er; // Unhandled 'error' event
      ^

오류문 해석
= '포트를 이미 사용 중' / '노드 서버가 정상적으로 종료되지 않음'

✔️내가 시도해본 것들

구글링 시도
=> 이미 port:3000에서 실행 중인 서버가 있다면 다음과 같은 오류가 일어날 수도 있다는 글을 읽고,

다음과 같은 방법을 실행했다.

EX.

  1. 실행중인 포트 닫기
  2. 다른 주소의 새로운 포트 열기
sudo lsof -i :3000

= 서버 종료를 위해 위의 코드를 터미널에 작성
-> 노드몬 강제 종료 시도

1. kill -9 :(포트넘버)
2. lsof -i :(포트넘버)
3. fuser -k (포트넘버)/tcp
4. kill $(lsof -t -i:(포트넘버))

= 서버 종료를 위해 터미널 명령어로 process kill 시도

  1. 포트 번호 :3000 => :5000으로 변경

✔️어떻게 해결 했는지

  1. 포트 번호 :3000 => :5000으로 변경

이 방법으로 새로운 페이지를 여는 것에 성공했다.

+ cmd - 명령 프롬포트 관리자 권한 이용

port를 삭제하는데 가장 많은 도움을 준 방법이다.

1. 윈도우 검색창에 cmd 검색 -> 명령 프롬포트 접근

2. netstat -a -o 명령어 입력 -> 실행되고 있는 port 확인

netstat -a -o

⚠ 이때, 바로 명령어 입력창이 뜨지 않는다.
-> 당황하지 말고 명령어 실행을 위한 C:\Windows\system32>이 뜰 때까지 기다리기

3. ctrl + f -> 검색창에서 port 찾기

4. taskkill /f /pid (port의 pid) 입력

taskill /f /pid (port의 pid)

5. 제거 확인 후 port 재실행

✔️새롭게 알게된 것

  • 서버 오류 시 검토할 사항 추가
    => 서버 재실행 시 이미 실행중인 port를 끄는 것

Node.js 서버의 오류 충돌로 인해 곤란했지만 역으로 port에 대한 다양한 명령어와 대처 방법을 알 수 있었다.

0개의 댓글

Powered by GraphCDN, the GraphQL CDN