npm이 작동하지 않음-“ECONNRESET 읽기”


164

npm에 문제가 있습니다. 아무것도 설치할 수 없습니다. 오류 메시지는 다음과 같습니다.

C:\Windows\system32>npm install -g yo
npm http GET https://registry.npmjs.org/yo
npm http GET https://registry.npmjs.org/yo
npm http GET https://registry.npmjs.org/yo
npm ERR! network read ECONNRESET
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settin
gs.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly.  See: 'npm help config'

npm ERR! System Windows_NT 6.2.9200
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "yo"
npm ERR! cwd C:\Windows\system32
npm ERR! node -v v0.10.17
npm ERR! npm -v 1.3.8
npm ERR! syscall read
npm ERR! code ECONNRESET
npm ERR! errno ECONNRESET
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Windows\system32\npm-debug.log
npm ERR! not ok code 0

왜 이런 생각입니까? 여기 내 네트워크 설정이 있으며 프록시를 구성하지 않은 것 같습니다. 또한 모든 방화벽을 비활성화했습니다.

여기에 이미지 설명을 입력하십시오


브라우저 registry.npmjs.org/yo 에서이 페이지를 방문 할 수 있습니까?
thefourtheye

SSL 인증서가 만료 된 것 같습니다!
Kushagra Gour

@thefourtheye 예 그 링크를 방문 할 수 있습니다
Omar

npm은 아무것도 설치하지 않습니다. 이 문제는 Express 설치에만 해당되는 것이 아닙니다
Omar

C : \ Windows \ system32 \ npm-debug.log를 확인해야 할 수도 있습니다.이 파일은 문제를 해결하기위한보다 정확한 정보를 제공합니다.
Nanda Kumar

답변:


326

사용하다

npm config set registry http://registry.npmjs.org/

npm http대신 url을 요청합니다 https.

그런 다음 같은 npm install명령 을 시도하십시오


19
당신은 또한 약간의 설명을 제공 할 수 있습니까, 그것은 매우 도움이 될 것입니다.
Rishul Matta

31
이 "수정"은 중간자 (man-in-the-middle) 공격에 취약합니다. 나는 이것을 생산에 사용하지 않을 것입니다.
thesmart

3
ISP 나 회사의 방화벽 / 프록시에 의해 해당 웹 사이트를 쉽게 차단할 수 있습니다. 위의 방법을 사용하면 더 빠르고 쉬워 지지만 올바른 웹 사이트에 연결되어 있는지 확인하지 않으므로 안전하지 않습니다. 차단되었는지 확인하려면 브라우저에서 registry.npmjs.org 로 이동 하십시오. 텍스트를 다시 가져와야합니다.
Marlon

1
haha .... 나는 이것을 몇 달 동안 계속해서 지나치려고 노력했다. 방금 VPN을 비활성화하고 패키지를 가져온 다음 다시 로그온했습니다. 고마워 다른 모든 문제는 단순히 프록시 주소 / 포트가 잘못되었거나 프록시가 HTTPS 트래픽을 수신하도록 구성되지 않았기 때문입니다.
voidzero

1
나는 그것이 안전하지 않을 수도 있다는 것을 알고 있습니다-Angular CLI를 통해 새로운 각도 4 앱을 만드는 동안 ECONNRESET 오류를 없애기 위해 모든 것을 시도했지만 그 솔루션은 효과가있었습니다. 새 프로젝트를 만든 후에는 https로 다시 전환 할 수 있습니다. 어쨌든 @mithunsatheesh 다시 한번 감사합니다.
born2fr4g

38

NPM 프록시 설정을 확인하고 제거 할 수 있습니다.

npm config get proxy
npm config rm proxy
npm config rm https-proxy

NodeJS + NPM을 새로 설치하면 프록시가 구성되어 있지 않을 수 있습니다. 이상하게도, 제 IP와 포트 3128을 가리키는 프록시가 정의되어 있습니다. 프록시를 제거하면 트릭을 만들었습니다.


cmd-npm install jquery를 사용하여 Angular 프로젝트에서 jquery를 설치하려고했지만이 솔루션을 시도했을 때 해결되는 프록시 오류가있었습니다.
Mohammed Amen

15

프록시 서버 / 포트를 지정해야 할 수도 있습니다. 일부 환경에서는 프록시의 시스템 설정이 npm에 충분하지 않습니다.

    npm config set proxy "http://your-proxy.com:80"

11

집에서 프록시 설정을 제거하고 Office 네트워크에서 스위치를 켭니다.

npm config set proxy http://xxx.xxx.xxx.4:8080   
npm config set https-proxy http://xxx.xxx.xxx.4:8080

npm config rm proxy   
npm config rm https-proxy

마지막 비트는 나를 위해 일한 - 내 .npmrc 파일을 확인하고 이전 HTTPS 프록시는 프록시 제거한 후이 여전히
Jayx

이것은 작동하지만 프록시없이 다른 네트워크로 갈 때마다 구성 해제하거나 기본값으로 재구성하는 방법은 무엇입니까 ??
DV Yogesh

9

npm을 사용하여 무엇이든 설치하면 발생할 수 있습니다. 이는 sudo캐시의 파일을 루트가 소유하게 하여이 문제를 발생시킵니다. 다음을 실행하여 문제를 해결할 수 있습니다.

sudo rm -rf ~/.npm

캐시를 제거합니다. 그런 다음 다시 사용하지 말고 절대로 sudo함께 사용하지 마십시오 npm(또는 문제가 다시 발생할 수 있음).

더 많은 정보 : npm은 sudo없이 오류를 발생시킵니다.


수행하려면 관리자에게 권한을 부여해야한다는 사실을 잊었습니다 npm -g update(설치 한 것처럼). 감사.
조지

6
이것이 ECONNRESET정확히 어떻게 발생 합니까? sudo새로운 방법으로 문제 를 해결할 수있는 것은 맞지만 레지스트리 서버가 연결을 끊는 것은 약간 믿을 수 없습니다.
zigg


3

프록시 네트워크 내에서 npm이 제대로 작동하도록하는 세 가지 사항.

이 npm registry 설정은 기본적으로 https가 필요할 수 있습니다.

npm 구성 세트 레지스트리 " http://registry.npmjs.org/ "

두 번째는 시스템에 두 개의 설정된 프록시입니다. 조직에서 프록시를 사용하는 경우

npm 구성 세트 프록시 " http : // username : password @ proxy-url : proxy-port "

npm 구성 세트 https-proxy " http : // username : password @ proxy-url : proxy-port "

설정 여부를 확인할 수도 있습니다.

npm 구성은 https-proxy를 얻습니다.

모든 가치를 위해.


오류가 표시되지 않지만 설치가 line-loadRequestedDeps : sill install loadAllDepsIntoIdealTree
RSB에

이것은 또 다른 문제입니다. 의 프록시 문제가 해결되었습니다. 월이 짧은 당신의 일이 stackoverflow.com/questions/40874237/...
히만 슈 샤르마

2

여기 및 다른 페이지에 게시 된 거의 모든 방법을 시도했지만 작동하지 않았습니다. 다음은 순서대로 실행 한 명령입니다. 많은 사람들에게 효과가 있었기 때문에 시도해 보는 것이 좋습니다.

  • npm config rm proxy
  • npm config rm https-proxy
  • npm config set https-proxy https://username:password@proxy.company.com:6050
  • npm config set proxy http://username:password@proxy.company.com:6050
  • npm config set registry http://registry.npmjs.org/

그런 다음 패키지를 설치하려고 시도 npm install -g express했지만 실패했습니다.

그러나 내가 npm install npm@latest -g그것을 실행하려고 하면 기적적으로 실행되고 잘 설치되었습니다!
그런 다음 npm install -g express다시 실행 해도 완벽하게 작동했습니다.

TL; DR : 최신 버전으로 npm을 업데이트하면 문제가 해결되었습니다 (현재 6.0.1).


1

직장에서 브라우저를로드하고 웹 페이지를 탐색해야합니다 (웹 필터를 인증합니다). 그런 다음 명령을 재 시도하고 성공적으로 작동했습니다.


2
이것이 나에게 도움이되었는지 또는 우연의 일치인지 100 % 확실하지는 않지만 Firefox 에서 registry.npmjs.org 로 이동 하면 다음에 npm 설치가 어떻게 도움이 되었습니까? 웹 필터 소프트웨어가 없습니다.
TalkLittle

1

이것은 오래된 질문이지만 어쨌든.

heroku에 배포하려고 할 때이 문제가 있었고 나를 위해 수정 된 npm것은 사용 된 버전 을 업데이트하는 것이 었습니다. 버전 2.xx가 있고 3.xx로 업데이트했습니다.


1

저장된 베어러 토큰이 유효하지 않은 경우에도이 오류가 발생할 수 있습니다. 계정을 지우고 재설정하여 토큰을 무효화하는 개인 저장소를 사용할 때이 문제가 발생했습니다. 리포지토리에 인증이 필요하지는 않지만 이전 로그인의 토큰이 있으면 전달되며 유효하지 않은 경우 연결이 종료됩니다.

새 사용자 이름과 비밀번호로 다시 로그인하거나 npm을 통해 간단히 로그 아웃하여이 문제를 해결할 수 있습니다.


1

레지스트리에 대해 http로 전환하고 싶지 않았습니다. 저에게 효과적 인 것은 최신 Node 버전에서 LTS 버전 (현재 6.x)으로 다운 그레이드하는 것이 었습니다.


1

npm 에이 오류가 발생하는 데 문제가있었습니다.

따라서 기본적으로 오류가 발생할 때마다
git에서 수동 설치 를 사용 하거나 다음과 같이 지정된 버전을 기다렸다가 설치했습니다.

npm install resolve@^1.1.6

혼자 실행할 때 :

npm install resolve

작동하지 않았다.

node.js를 7에서 8로 업데이트했으며 npm 설치가 원활하게 진행됩니다.

@luschn 이 6으로 다운 그레이드되어 7도 사용하지 않았기 때문에 버전 7 이이 문제를 일으킨 것으로 생각 됩니다.

어쩌면 레지스트리 자체가 상태 페이지에서 문제를 표시하지 않고 오류를 반환하고있을 수 npm install있습니다.


1

프록시가없는 로컬 홈 네트워크에서 동일한 문제가 발생했습니다. 이 스레드의 다른 답변은 효과가 없었습니다. 내가 한 일은 다음 yarn과 상호 교환 가능하게 사용하는 것입니다 npm.

yarn add

오늘까지도 npm이 여전히 작동하지 않는 이유를 모르겠습니다. 스마트 폰에서 브로드 캐스트 된 LTE 인터넷에 연결하면 npm install다시 작동 하기 때문에 Wi-Fi에 문제가 있음을 확실히 알고 있습니다. 라우터 설정과 관련이있을 수 있습니다 (인터넷 속도를 업그레이드하고 ISP 작업자가 이전 라우터를 새 라우터로 교체 할 때 문제가 시작되었습니다).


1

Oracle VirtualBoxnpm 에서 에뮬레이트 된 시스템 에서 실행하려고 할 때 동일한 문제가 발생했습니다 . 네트워크 어댑터 속성에 Google DNS 주소를 추가하여 문제를 해결했습니다.

네트워크 어댑터 속성> IPv4 속성> 기본 DNS 주소 : 8.8.8.8.


1

나는 같은 문제가 있었지만 이러한 해결책 중 어느 것도 올바르게 작동하지 않았습니다. 마지막으로, npm과 호환되는 yarn을 통해 패키지를 설치했습니다 . 공식 웹 사이트에 따라 :

npm에서 마이그레이션하는 것은 대부분의 사용자에게 매우 쉬운 프로세스입니다. Yarn은 npm과 동일한 package.json 형식을 사용할 수 있으며 npm 레지스트리에서 모든 패키지를 설치할 수 있습니다.

얀을 설치 한 다음 얀과 동등한 다음 명령을 사용하여 설치를 실행하십시오 npm install.

yarn install

자세한 내용은 다음을 참조하십시오. – 원사 : npm에서 마이그레이션 .


1

npm config rm proxy

npm config rm https-proxy

나를 위해 일한다!


1

npm에서 패키지를 설치하는 동안 Windows에서 동일한 문제가 발생했습니다. -** 관리자 권한으로 명령 프롬프트 열기를 사용하여이 3 가지 명령을 실행하도록 수정했습니다 ** /

1. npm 구성 rm 프록시

2. npm 구성 rm https-proxy

3. npm install npm @ latest -g

MAC / LINUX의 경우
1. sudo npm config rm proxy

2. sudo npm 구성 rm https-proxy

3. sudo npm install npm @ latest -g

기본적으로 이것은 npm 버전의 isuue입니다. 저크를 확인하십시오



1

회사 방화벽은 노드 설치를 중지하므로 개인 네트워크에 연결하고 설치하면 나에게 도움이되었습니다.


1

"npm config edit"가 https-proxy, proxy, registry에 대한 항목을 업데이트하는 데 더 유용한 것으로 나타났습니다.

나는 이런 식으로했다

  • npm 구성 목록
  • npm 구성 편집 (vi에서 열립니다)
  • https-proxy, proxy, registry에 대한 구성 항목 편집 또는 설정
  • npm 설치

1

만약을 위해 한 번만 더 노력하면 나를 위해 일했습니다. 일시적인 연결 문제 일 있습니다.


1

Windows를 사용하는 경우 고급 시스템 설정에 따라 환경에 선언 된 환경을 확인해야합니다. 프록시 구성은 아래 그림과 같이 환경 변수 내에있을 수 있습니다.

Windows 환경 변수

따라서 프록시 서버를 사용할 수 없거나 npm의 트래픽을 차단하는 경우이 주제에서 언급 된 오류가 표시 될 수 있습니다. 어쩌면 프록시가 전혀 필요하지 않을 수도 있습니다.이 경우이 HTTP_PROXY env 변수를 제거하십시오.

Windows 및 npm 설정에서 모든 프록시 구성을 해제했지만 리소스를 다운로드하는 동안 npm에서 여전히 시간 초과 및 연결 오류가 발생하고 있으며 env 변수에 프록시 구성이 여전히 남아있어 모든 문제를 일으키는 것으로 나타났습니다.



당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.