Ошибка: getaddrinfo ENOTFOUND registry.npmjs.org registry.npmjs.org:443

Я работаю над корпоративной сетью.

Попытка установить npm. Но я получаю эту ошибку снова и снова.

$ npm install
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program     Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! node v6.1.0
npm ERR! npm  v3.8.6
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! syscall getaddrinfo

npm ERR! network getaddrinfo ENOTFOUND registry.npmjs.org    registry.npmjs.org:443
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! Please include the following file with any support request:
npm ERR!     C:\Angular-test\angular-phonecat\npm-debug.log

Пробовал это также: npm config set registry https://registry.npmjs.org/

По-прежнему возникает ошибка.

Ответ 1

Что нужно попробовать:

  • убедитесь, что у вас есть подключение к Интернету: ping 8.8.8.8
  • убедитесь, что у вас работает DNS-преобразователь: ping www.google.com
  • убедитесь, что вы можете получить доступ к registry.npmjs.org: ping registry.npmjs.org
  • убедитесь, что вы можете подключиться через https.

Попробуйте в своем браузере: https://registry.npmjs.org/

Убедитесь, что вы пытаетесь подключиться к:

  • registry.npmjs.org

а не:

  • "registry.npmjs.org registry.npmjs.org:443"

или какая-то другая странная строка, состоящая из нескольких имен хостов, потому что странно, что резольвер жалуется на имена хостов, которые включают номер порта, на который он не должен заботиться. Хорошо, я тестировал и должен выглядеть так, чтобы хосты не были найдены.

Update

Из вашего комментария к этому ответу кажется, что вы не напрямую связаны с Интернетом, если вы не можете даже пинговать 8.8.8.8.

Если вы используете прокси для доступа к Интернету, вам также нужно настроить npm, чтобы использовать его. Использование:

npm config set proxy http://example.com:8080
npm config set https-proxy http://example.com:8080

но вместо http://example.com:8080 используйте то, что вам действительно нужно в вашей компании, - спросите кого-нибудь или посмотрите, как настроен ваш браузер.

Чтобы просмотреть конфигурацию прокси-сервера в Chrome, см. this.

Обновление 2

Если вы можете получить https://registry.npmjs.org/ в своем браузере, но вы не можете запуститься ping registry.npmjs.org, то это означает, что ваш браузер должен быть настроен на использование прокси-сервера или других программ, чем ваш браузер должен быть ограничен из-за использования Интернета.

В любом случае, вы должны попросить кого-нибудь из вашей компании об этом, потому что, скорее всего, вам нужно либо использовать определенный прокси, либо кто-то должен снять ограничение с вашего npm и разрешить ему получать доступ к сети.

Доступ к сети может быть заблокирован брандмауэром, установленным на вашем компьютере или маршрутизатором в вашей сети. Трудно сказать, не зная конкретной конфигурации в вашей компании.

Ответ 2

Сначала отредактируйте файл NetworkManager.conf:

vim /etc/NetworkManager/NetworkManager.conf

Прокомментируйте эту строку:

#dns=dnsmasq

Наконец

sudo service network-manager restart
sudo service docker restart

Ответ 3

используйте: https://registry.npmjs.org/ Убедитесь, что вы пытаетесь подключиться к:

registry.npmjs.org

если ошибки нет, попробуйте очистить кеш

очистка кеша npm --force, затем попробуйте установить npm

даже у вас есть ошибки

Конфигурация набора настроек npm https://registry.npmjs.org/, затем попробуйте установить npm -g @angular/cli

Ответ 4

Как я думаю, если система подключена к Интернету, это может быть проблемой proxy

Сделайте это, чтобы удалить proxy

npm config delete proxy

Ответ 5

Вы можете использовать эту команду

npm config delete proxy

Это происходит потому, что formidable подвержен серьезности уязвимости. Итак, вам нужно переопределить это, выполнив приведенную выше команду.

Ответ 6

Я пробовал много, но это работало хорошо для меня.

npm config rm proxy
npm config rm https-proxy

выше 2 команд достаточно, если это не работает, попробуйте это тоже.

npm config --global rm proxy
npm config --global rm https-proxy

Ответ 7

Если Ubuntu попытается открыть Все настройки > Сеть > Сетевой прокси установите метод для автоматического и сохранения.

Ответ 8

Я была такая же проблема. Причиной была проблема корпоративного прокси. Решением было установить настройку прокси, как говорит @rsp.

npm config set proxy http://example.com:8080
npm config set https-proxy http://example.com:8080

Но позже я сталкиваюсь с той же проблемой. На этот раз причина в том, что мой пароль содержит специальный символ.

В этой команде вы не можете ввести пароль со специальным символом

Таким образом, решение заключается в том, чтобы ввести в пароле специальный символ в процентах.

Например, # должен предоставить как% 23

https://www.w3schools.com/tags/ref_urlencode.asp

Ответ 9

Я потратил более 5 часов, пытаясь избавиться от этого сообщения в Windows 8.1. Поэтому я хотел бы поделиться своим делом и сэкономить время. Я не был за прокси... но настройка прокси помогла решить проблему. Так что я углубился и обнаружил, что проблема была вызвана Comodo Firewall... который заблокировал cmd, так как я слишком быстро устанавливал пакеты (отключение и даже закрытие Firewall не помогло, что заставило меня так долго находить проблему... кажется как будто был какой-то другой процесс Firewall, работающий в фоновом режиме). У вас может быть такая же проблема с любым другим установленным брандмауэром/антивирусом, поэтому убедитесь, что cmd не заблокирован ими. Удачи!

Ответ 10

У меня установлена свежая Windows 10 на моем компьютере, и я попробовал это в командной строке, и она работает как чудо:

npm config rm https-proxy

Ответ 11

в моем случае это были просто периодически возникающие проблемы, кажется, они не работали в течение нескольких попыток, затем посмотрели на https://registry.npmjs.org (веб-страница работала нормально), попробовали еще раз, попробовали еще раз, а затем все заработало.

Ответ 12

Для Windows Подсистема Linux:

Перезапуск моего терминала WSL (bash/shell) устранил проблему (однако потребовалось несколько перезапусков и минут).

используйте nslookup www.google.com или npm.org для проверки подключения.

Ответ 13

Сначала вам нужно использовать эту команду

Конфигурация npm устанавливает реестр https://registry.your-registry.npme.io/

Это делается для того, чтобы регистр предприятий нашей компании стал регистром по умолчанию.

Вы можете попробовать и другие данные решения.