2023/03/05 트러블슈팅
PS C:\Users\Administrator\Desktop\fc-my-books-master (2)> node -v
node : 'node' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오.
위치 줄:1 문자:1
+ node -v
+ ~~~~
+ CategoryInfo : ObjectNotFound: (node:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
PS C:\Users\Administrator\Desktop\fc-my-books-master (2)>
Starting the development server...
Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:71:19)
at Object.createHash (node:crypto:133:10)
at module.exports (C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\util\createHash.js:135:53)
at NormalModule._initBuildHash (C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\NormalModule.js:417:16)
at handleParseError (C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\NormalModule.js:471:10)
at C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\NormalModule.js:503:5
at C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\NormalModule.js:358:12
at C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\loader-runner\lib\LoaderRunner.js:373:3
at iterateNormalLoaders (C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
at iterateNormalLoaders (C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\loader-runner\lib\LoaderRunner.js:221:10)
C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\react-scripts\scripts\start.js:19
throw err;
^
Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:71:19)
at Object.createHash (node:crypto:133:10)
at module.exports (C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\util\createHash.js:135:53)
at NormalModule._initBuildHash (C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\NormalModule.js:417:16)
at C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\NormalModule.js:452:10
at C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\webpack\lib\NormalModule.js:323:13
at C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\loader-runner\lib\LoaderRunner.js:367:11
at C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\loader-runner\lib\LoaderRunner.js:233:18
at context.callback (C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\loader-runner\lib\LoaderRunner.js:111:13)
at C:\Users\Administrator\Desktop\fc-my-books-master (2)\node_modules\babel-loader\lib\index.js:59:103 {
opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported',
code: 'ERR_OSSL_EVP_UNSUPPORTED'
}
npm start 했을 때, 위와 같이 오류 출력 되었음.
--오류 원인 추측--
node.js version을 down grade 및 openssl 설치를 했어야 한다.
--해결 방안--
NVM 설치하고 Node js 버전관리하는 방법.
1.nvm 설치
Releases · coreybutler/nvm-windows
다운로드하여 압축을 풀면 nvm-setup.exe 파일을 실행하여 nvm을 설치.
설치 후 커멘드창에서
nvm version
or
nvm -v
입력 enter를 치면 버전을 확인할 수 있다.
2.nvm으로 node 설치하기
nvm 명령어로 node 를 설치할 수 있다.
명령어는 다음과 같이 작성.
nvm install v12.22.9 64
node 버전을 확인하여 설치하고 싶다면 버전은 아래의 링크에서 확인할 수 있다.
설치 후 설치된 node 버전 목록을 확인하려면 다음과 같은 명령어를 입력해준다.
터미널이나 cmd 같은 프로그램을 실행 시 관리자 권한으로 실행해야 버전을 변경할 수 있다
라고는 하는데, 해당 트러블 슈팅시 관리자 권한은 실행하지 않았다.
nvm ls 입력 후 엔터
3. nvm 으로 버전 변경하기
그럼 목록이 나오고 설치한 node 버전 목록 중 사용하고 싶은 버전의 node로 변경하려면
다음과 같은 명령어를 입력하여 실행해준다.
nvm use 12.22.9
4.OPENSSL 설치
Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions
2번째 설치한다.
환경변수 설정한다. (당시 구동 확인된 환경변수)
C:\Program Files\OpenSSL-Win64\bin
node_modules\npm\bin
%NVM_HOME%
%NVM_SYMLINK%
위의 환경변수 path는 중요한 것 같으니, 없으면 복사 붙여넣기를 해보는게 좋을 것 같다.
아래 경로도 혹시 모르니 첨부 함.
C:\Windows\System32\OpenSSH\
그리고 새로만들기로
OPENSSL_CONF
C:\Program Files\OpenSSL-Win64\bin\cnf\openssl.cnf
이렇게 생성 해준다.
이후 구동확인 완료.
참고 사이트