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
助けてくれてありがとう。
それがだれにも役立つ場合:私に有効な唯一の解決策は、レジストリを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の不具合だとほぼ確信しています
NPMプロキシ設定を確認し、おそらくそれを削除することができます。
npm config get proxy
npm config rm proxy
npm config rm https-proxy
NodeJS + NPMの新規インストールにはプロキシが設定されていないことが予想されます。奇妙なことに、鉱山にはIPとポート3128を指すプロキシが定義されていました。プロキシを削除するとうまくいきました。
コマンドプロンプトで以下のようにプロキシを設定します。
npm config set proxy http://1X.XX.X.40:80
問題は解決しました。
私は最初の解決策、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です。
その価値がどこから来るのか私にはわかりません。