Jaeilit

Nextjs v13.4 Error: connect ECONNREFUSED 127.0.0.1:3001 에러해결 본문

TIL

Nextjs v13.4 Error: connect ECONNREFUSED 127.0.0.1:3001 에러해결

Jaeilit 2023. 6. 14. 13:52
728x90

 

어제 작업하고 푸쉬까지 했는데 오늘 다시 npm run dev 개발 서버를 열어보니

Error: connect ECONNREFUSED 127.0.0.1:3001 라는 에러가 발생했다.

소켓은 쓰지도 않는데 소켓이라..?

 

일단,

 

내용은 3001번 포트로 연결하지 못했다는 것인데 로컬은 3000번 포트를 쓰고 있는데 이게 무슨 일이람..

 

문제 해결을 위해서 했던 방법들을 나열 해봤다.

 

1. ls -i :3000 으로 3000번 포트 찾아서 포트 죽여버리기

2. 브라우저에서 localhost 페이지에 쿠키/캐시를 다 날려버리기

3. rm -rf node_modules 로 패키지를 다 삭제하고 설치하기

 

결론적으로 이 3가지 방법으로도 해결하지 못했는데

사실 json-server 를 썻고 포트를 3001번으로 사용하고 있었다.

이 포트번호가 뭐가 잘못된게 아닐까하고 4000번으로도 바꿔보고 5000번으로도 바꿔봤지만

 

여전히 Error: connect ECONNREFUSED 127.0.0.1:3001 라는 에러가 발생했다.

아 이거랑은 관계가 없나? 싶었지만 혹시나 하는 마음에 json-server 를 아에 삭제도 해봤다. 역시 에러가 발생하고 있었다.

 

누가 그랬다. 고수는 컴퓨터하고 대화를 한다고...

대화를 시도해봤다. 왜 에러를 내뱉니?

 

컴퓨터의 로컬서버를 이해해보려고 로컬서버 입장을 생각해보니 npm run dev 할때 .next 에 만들어지는 파일들 때문일까?

.next 도 삭제해보고 다시 npm run dev 를 해봤지만 여전히 에러를 발생하고있었다.

 

이건 아닌거같아서 다시 이해해보려고 했다.

문뜩 생각난게, server componets 는 서버에서 일단 static 한 html 을 만들어야되는데 내 3001번이였던 json-server 가 안열려있어서 서버에서 fetch 를 못하고, 그러면 데이터가 없어서 html을 못만드는게 아닌가라는 생각을 해서 axios 에 baseUrl 을 4000번으로 바꿔봤다.

 

4000번으로 포트 번호가 바꼈다.

아 이제 이해가 됬다.. 서버에서 html 을 만들어야되는데 통신을 못해서 데이터를 못가져오니까 html 을 못만드는데,

이 과정에서 json-server 가 안열려있으니까 데이터를 가져와야하는데 통신자체를 못해서 그 단계에서 에러를 내뱉은 거다.

 

그래서 json-server 를 다시 설치해주고 json-server 부터 열어두고 npm run dev 를 하니 잘 열렸다.

 

 

728x90

'TIL' 카테고리의 다른 글

nextjs @svgr/webpack jest + @issue 해결  (0) 2023.07.21
프로그래밍 패러다임  (0) 2023.07.09
리액트 재조정과 가상돔  (0) 2023.06.08
브라우저 렌더링  (0) 2023.06.07
URL 을 입력 했을 때 일어나는 일  (1) 2023.05.26