web-dev-qa-db-ja.com

nodejs 8への更新後にNpmがエラーをスローする

Nodejsを最新バージョンに更新した後、npm installを実行してパッケージをインストールしようとすると、常にエラーが発生します。

npm WARN registry Using stale data from http://registry.npmjs.org/ because the Host is inaccessible -- are you offline?
npm WARN registry Using stale package data from http://registry.npmjs.org/ due to a request error during revalidation.
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! network request to http://registry.npmjs.org/escope failed,      reason: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:80
npm ERR! network This is a problem 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'

インターネット接続に問題はなく、https: https://registry.npmjs.org へのルートを無効にして、httpに置き換えます-最初のインストールは機能し、起動直後は動作しません再び働きます。

ノードのバージョン8.2.1

npmバージョン5.3.0

助けてくれてありがとう。

7
Adidi

それがだれにも役立つ場合:私に有効な唯一の解決策は、レジストリをpingしてIPを見つけることです。 IPを取得したという事実は、ブロックされていないことを意味します

_ping registry.npmjs.org_

64 bytes from registry.npmjs.org (151.101.60.162): icmp_seq=1 ttl=52 time=87.3 ms

私のhostsファイルでこのホストにIPを設定します(私はcentos/etc/hosts /にあります):

_151.101.60.162 registry.npmjs.org_

NPMの不具合だとほぼ確信しています

15
Adidi

NPMプロキシ設定を確認し、おそらくそれを削除することができます。

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

NodeJS + NPMの新規インストールにはプロキシが設定されていないことが予想されます。奇妙なことに、鉱山にはIPとポート3128を指すプロキシが定義されていました。プロキシを削除するとうまくいきました。

13
Jijo Paulose

コマンドプロンプトで以下のようにプロキシを設定します。

npm config set proxy http://1X.XX.X.40:80

問題は解決しました。

0

私は最初の解決策、ping registry.npmjs.orgを試し、それをHost fileに追加しましたが機能しません。2番目の方法を試します。

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

そして、それは私のために働きます。 「npm config get proxy」では、ポート8080の値がありましたが、現在はnullです。

その価値がどこから来るのか私にはわかりません。

0
Cyril