Dev study and Repost

MERN - 클라이언트/서버 프로젝트 클라이언트와 서버 연동 설정 7 - 프론트엔드와 백엔드 연결B 본문

Building & Learning/MERN PERN

MERN - 클라이언트/서버 프로젝트 클라이언트와 서버 연동 설정 7 - 프론트엔드와 백엔드 연결B

devlunch4 2025. 7. 14. 11:28
반응형

MERN - 클라이언트/서버 프로젝트 클라이언트와 서버 연동 설정 7 - 프론트엔드와 백엔드 연결B

로컬환경에서 클라이언드와 서버를 테스트 구동하고있다.

즉 프론트엔드와 백엔드 둘다 로컬에서 테스트용으로 구동을 하고 있다.

갑자기 서버 구동시 오류를 발견하였다.

[nodemon] 3.1.10

[nodemon] to restart at any time, enter `rs`

[nodemon] watching path(s): *.*

[nodemon] watching extensions: js,mjs,cjs,json

[nodemon] starting `node server.js`

✅ Cloudinary configuration completed

(node:17887) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.

(Use `node --trace-deprecation ...` to show where the warning was created)

위 로그에서 중요 내용을 번역해보면,

(node:17887) [DEP0040] DeprecationWarning: `punycode` 모듈은 더 이상 사용되지 않습니다. 사용자용(userland) 대체 모듈을 사용하세요.

(경고가 발생한 위치를 확인하려면 `node --trace-deprecation ...` 명령을 사용하세요)

일단 오류 원인은 `punycode` 모듈이 더이상 사용되지 않는 것이다.

누가 사용하고 있는지 확인해보고자 해당 경로 터미널에 아래 명령어를 입력한다.

$ npm ls punycode

 

데이터베이스 연결인 몽구스에서 사용을 하고 있다.

일단 원격IDE에서 실행시 맨위 로그메시지를 확인할수 없었지만,

로컬에서 작업시 로그메시지를 확인하게 되었다.

이제 좀더 상세한 로그나 오류 원일을 찾아보자..

앞선 로그에서 안내된 명령어를 확인해보자.

$ node --trace-deprecation server.js

>>>

그리고 node 의 버전을 확인해보자

$ node -v

여기서 로컬의 노드 버전은

v22.13.0

원격ide의 node 버전은

 

v20.18.1

각각의 버전이 확인되었다.

이 두 차이 때문에 확인된 로그였다.

클라이언트 부분의 터미널 로그에서도 일부 정보 로그를 볼 수 있었는데.

오류이기도 하면서 아니기도한 애매한 로그였다.

이를 수정하기 좋은 방법은 npm을 업데이트 또는 갱신하는 법이다.

클라이언트 터미널에서 아래 명령어를 실행한다.

$ npm update

최신버전으로 npm 패키지가 업데이트 된다.

이로 인해 오류가 발생할수도 있고 주의해야한다.

이전의 npm백업하는 방법은 여러방법이 있어서 정리해서 남겨본다.

---

방법1 package-lock.json 백업

터미널에서 아래 명령어 실행

$ cp package-lock.json package-lock.backup.json

방법1 복구방법

기존의 node-modules 삭제

$ rm -rf node_modules

백업된 락파일 복구

$ mv package-lock.backup.json package-lock.json

npm 재설치

$ npm install

---

방법2 node_modules 폴더 백업

아래 명령어로 폴더 백업

$ cp -r node_modules node_modules_backup

방법2 복구 node_modules 폴더 복구

$ rm -rf node_modules

$ mv node_modules_backup node_modules

---

방법3 설치된 패키지 목록저장

메모장 파일로 npm 설치 패키지 목록저장

$ npm list --depth=0 > npm-packages-before-update.txt

방법3 복구 하기

메모장 파일의 패키지 목록을 보고 npm install 한다.

$ npm install express@4.18.2 mongoose@7.3.1 ...

---

다시 본론,,,

일단 사용중인 몽구스 패키지 내부에서 사용하는 모듈/패키지 문제이나,

정상 작동중이니... 일단 그대로 사용해본다..

여전히 아래 로그는 확인이 된다.

(node:17887) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.

(Use `node --trace-deprecation ...` to show where the warning was created)

끝!

반응형
Comments