NPM doesn't install any modules: network socke

2019-01-07 09:48发布

问题:

Salam (means Hello) :)

I have the latest version of node.js installed on ubuntu 12.04, I'm not behind any proxies, and my network settings are correctly configured, and were intact since last time when NPM worked fine. But now NPM hangs up installation of any modules with following error:

nasser@nasser-desktop:~/projects/server v3$ npm install simple-proxy
npm WARN package.json docco@0.6.2 No repository field.
npm http GET https://registry.npmjs.org/simple-proxy
npm http GET https://registry.npmjs.org/simple-proxy
npm http GET https://registry.npmjs.org/simple-proxy
npm ERR! network socket hang up
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 settings.
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 Linux 3.5.0-17-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "simple-proxy"
npm ERR! cwd /home/nasser/projects/serverV3
npm ERR! node -v v0.10.18
npm ERR! npm -v 1.3.8
npm ERR! code ECONNRESET
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /home/nasser/projects/serverV3/npm-debug.log
npm ERR! not ok code 0

回答1:

i had same problem. it seems that there is some problem with ISP's https handling. doing:

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

worked for me



回答2:

I was having the same problem. Found a solution in this thread. You can see the effective proxy that npm is using by doing:

npm config get proxy
npm config get https-proxy

If you're behinid a proxy, try this:

mv ~/.npmrc ~/.npmrc.bak


回答3:

I was having a similar issue with my windows machine and i fixed it by first checking whether my proxy got some value by executing the below command.

npm config get proxy

in return i got the below:

http://usr:pwd@host/:port

So if anyone who is not under a proxy layer first set the proxy as null by executing the below command.

npm config set proxy null

now if you excecute your npm i it should not throw any network error.



回答4:

If you are behind a proxy that has username and password authentication, try setting the proxy as

npm config set proxy http://username:encodedpassword@proxyaddress:port

npm config set https-proxy http://username:encodedpassword@proxyaddress:port



回答5:

Just follow these steps before you run: npm install -g @angular/cli

  1. npm cache clean (You can even ignore if it throws an error)
  2. npm config set strict-ssl false
  3. npm config set proxy http://myusername:mypassword@proxyaddress:port
  4. npm config set https-proxy http://myusername:mypassword@proxyaddress:port


回答6:

Add the proxy and http_proxy field with your credentials (encoded if it contains any special characters) to your .npmrc file and run npm install again. It should work.

for example:

proxy=http://username:passcode@proxyURL:80/ https_proxy=http://username:passcode@proxyURL:80



回答7:

Find .npmrc file, open with note pad. then delete the proxy setting there