20

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
Nasser Torabzade
  • 6,490
  • 8
  • 27
  • 36
  • 1
    Maybe a transitional problem: http://blog.nodejs.org/2013/11/26/npm-post-mortem/ – hgoebl Dec 05 '13 at 11:18
  • I'm not sure this answer works for all! But it works for me. I tried to ping registry.npmjs.org, and didn't get any output so I have changed my network gateway then I pinged again, I got acknowledgement from the domain "registry.npmjs.org" After that I can install it – Sathish Nov 25 '14 at 11:22

8 Answers8

99

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

pajooh
  • 1,916
  • 2
  • 18
  • 17
  • 2
    you are a saver. I lost days to find why it happens. Now I was able to install even bower. Thaaaaaaaaaaaankssss – albanx May 15 '15 at 13:10
  • 1
    Wow, I thought npm was just really crappy until finding this... ember-cli goes from taking 10 minutes to fetch (or outright failing) to maybe 25-30 seconds. – Josh Sandlin Jul 02 '15 at 07:39
  • 2 years later, and this helped me! Thank you – Daniel Feb 23 '16 at 14:17
  • 2.5 years later, and this helped me get npm install working in the brand new bitbucket pipelines beta! Thanks! – Yoni Rabinovitch Jun 16 '16 at 12:36
  • And today is 8-Sep-2016... 2 yrs 8 months are over.....It helped me after I became almost bold plucking off all my hairs....truly you are a saver ......God bless you @pajooh – Surajit Biswas Sep 08 '16 at 08:37
  • Still a great answer in 2017! However it does take a while to ftetchMetadata, is there anything I do about this or just stuck with this due to corp proxy? – rbucinell Jan 10 '17 at 19:46
  • THANKS! Not sure why official website has no mention of this problem. – Paul Denisevich Feb 26 '19 at 16:45
6

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
warvariuc
  • 57,116
  • 41
  • 173
  • 227
Marina
  • 61
  • 1
4

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.

Fahid Mohammad
  • 910
  • 3
  • 17
  • 47
2

I tried multiple solution but most of cases happened with me is network/ssl and proxy issue.Network/ssl cases are very common and there are bunch of solution but with proxy thing I shared my fixes with you.

Bash Commands:

npm config set proxy null
npm config set https-proxy null
npm config set http-proxy null

in my case I'm using https://registry.npmjs.org/ url. After NULL proxy its start working. npm set default proxy as http://my-proxy.com:1080/ so either we have to change proxy url or null it. To get your default proxy hit below command in your bash.

npm config get proxy
Vrushal Raut
  • 1,050
  • 2
  • 15
  • 20
0

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

Santosh Sindham
  • 879
  • 8
  • 18
0

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
anothernode
  • 5,100
  • 13
  • 43
  • 62
Kabiraj Kharel
  • 203
  • 2
  • 11
0

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

Maha
  • 1
  • 1
-1

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

Haruna Akhmad
  • 111
  • 1
  • 4