Прочитайте о прокси-переменной в .npmrc
файле, но она не работает. Попытка избежать загрузки вручную всех необходимых пакетов и установки.
266
Я решил эту проблему следующим образом:
Я запускаю эту команду:
npm config set strict-ssl false
Затем установите npm для работы с http вместо https:
npm config set registry "http://registry.npmjs.org/"
Затем я устанавливаю пакеты, используя этот синтаксис:
npm --proxy http://username:password@cacheaddress.com.br:80 install packagename
Пропустить username:password
часть, если прокси не требует от вас аутентификации
РЕДАКТИРОВАТЬ: мой друг только что отметил, что вы можете заставить NPM работать за прокси, установив ОБА переменные среды HTTP_PROXY и HTTPS_PROXY, а затем обычно выполняя команду npm install express (например)
РЕДАКТИРОВАТЬ 2: Как прокомментировал @BStruthers, имейте в виду, что пароли, содержащие "@", не будут анализироваться правильно, если в нем содержится @, то весь пароль следует заключать в кавычки
my@password
, ваш файл .npmrc должен иметьmy%40password
для парольной части. Помещение в кавычки работает в некоторых случаях, но кодирование является надежным.Настройка
npm
проксиДля
HTTP
:Для
HTTPS
:используйте адрес прокси https, если он есть
еще повторно использовать адрес прокси http
Примечание : https-прокси не имеет
https
в качестве протокола, ноhttp
.источник
Если вы сомневаетесь, попробуйте все эти команды, как я:
=======
ОБНОВИТЬ
Вставьте свои настройки в
~/.bashrc
или~/.bash_profile
около того, чтобы вам не пришлось беспокоиться о своих настройках каждый раз, когда вы открываете новое окно терминала!Если ваша компания похожа на мою, мне приходится часто менять свой пароль. Поэтому я добавил следующее в мой ~ / .bashrc или ~ / .bash_profile, чтобы каждый раз, когда я открывал терминал, я знал, что мой npm актуален!
Просто вставьте следующий код внизу вашего
~/.bashrc
файла:Затем отредактируйте поля «username», «password» и «proxy» в вставленном вами коде.
Откройте новый терминал
Проверьте ваши настройки, запустив
npm config list
иcat ~/.npmrc
Попробуйте установить свой модуль, используя
npm install __
, илиnpm --without-ssl --insecure install __
, илиnpm --without-ssl --insecure --proxy http://username:password@proxy:8080 install __
.-g
источник
npm config set registry http://registry.npmjs.org/
,npm config set proxy http://myusername:mypassword@proxy.us.somecompany:8080
,npm config set https-proxy http://myusername:mypassword@proxy.us.somecompany:8080
,npm config set strict-ssl false
для НОЙ конфигурации и затем устанавливаются пакет NPM , используяnpm --proxy http://myusername:mypassword@proxy.us.somecompany:8080 --without-ssl --insecure -g install {packagename}
. СпасибоВы пробовали параметры командной строки вместо
.npmrc
файла?Я думаю, что-то вроде
npm --proxy http://proxy-server:8080/ install {package-name}
сработало для меня.Я также видел следующее:
npm config set proxy http://proxy-server:8080/
источник
Хотя уже есть много полезных советов, для моей среды (Windows 7, использующей PowerShell) и последней доступной версии node.js (v8.1.2) все вышеперечисленное не сработало, за исключением случаев, когда я следовал настройкам brunowego .
Поэтому проверьте ваши настройки с помощью:
Настройки за прокси:
Надеюсь, это сэкономит время кому-то
источник
Это работает для меня в Windows:
Если вы не находитесь ни в каком домене, используйте:
Если ваш пароль содержит специальные символы , такие как
"
,@
,:
и так далее, заменить их по URL закодированных значений. Например"
->%22
,@
->%40
,:
->%3A
.%5C
используется для персонажа\
.источник
encodeURIComponent("YourP@ssword")
чтобы получить зашифрованную версию вашего пароля.Для настройки http-прокси установите флаг -g :
sudo npm config set proxy http://proxy_host:port -g
Для https прокси, снова убедитесь, что установлен флаг -g :
sudo npm config set https-proxy http://proxy_host:port -g
источник
источник
Это сработало для меня
источник
vim ~/.npmrc
в вашей машине Linux и добавьте следующее. Не забудьте добавитьregistry
деталь, так как это во многих случаях приводит к сбою.источник
https-proxy=https://..
наhttps-proxy=http://..
Наконец, мне удалось решить эту проблему, используя прокси-сервер behinde с аутентификацией AD. Я должен был выполнить:
Очень важно, чтобы URL кодировал любые специальные символы, такие как backshlash или # В моем случае мне пришлось кодировать
backshlash
с% 5C так иdomain\user will
будетdomain%5Cuser
#
войдите с%23%0A
таким паролем, какPassword#2
будетPassword%23%0A2
Я также добавил следующие настройки:
источник
Хотя я установил прокси с помощью конфигурации, проблема не была решена, но после этого у меня сработало:
источник
Я перепробовал все эти варианты, но у моего прокси-сервера по какой-то причине его не было. Затем, родившись из отчаяния / отчаяния, я случайно попробовал
curl
в своей оболочке Git Bash, и это сработало.Отключение всех параметров прокси с помощью
И тогда запуск
npm install
в моей оболочке Git Bash работал отлично. Я не знаю, как он настроен правильно для прокси, аcmd
приглашение Windows - нет, но это сработало.источник
Это решило мою проблему.
источник
Наконец, после привязки разных ответов, первые четыре строки @Kayvar answers помогают мне решить проблему:
источник
Это сработало для меня. Установите http и https прокси.
источник
Попробуйте найти .npmrc в C: \ Users \ .npmrc
затем откройте (блокнот), напишите и сохраните внутри:
PS: удалите "<" и ">", пожалуйста!
источник
Для меня, хотя python и т. Д. Все будет работать, хотя наш корпоративный прокси-сервер npm не будет.
Я попытался
npm config set proxy http://proxyccc.xxx.ca:8080 npm config set https-proxy https://proxyccc.xxx.ca:8080 npm config set registry http://registry.npmjs.org/
в соответствии с инструкциями, но продолжал получать ту же ошибку.
Только когда я удалил
https-proxy https://proxyccc.xxx.ca:8080
файл .npmrc, npm установил электрон - save-dev сработалисточник
https-proxy
, вероятно, нетhttps:
. По крайней мере, иметь один и тот же порт для каждого из них, вероятно, не правильно, но я думаю, что они оба имеют одинаковое значение.В системе Windows
Попробуйте удалить параметры прокси и реестра (если они уже установлены) и установить переменные среды в командной строке с помощью
затем попробуйте запустить npm install. Таким образом, вы не будете устанавливать прокси в .npmrc, но для этого сеанса он будет работать.
источник
SET HTTP_PROXY http://username:password@domain:port
но переключился на,SET HTTP_PROXY=http://username:password@domain:port
казалось, чтобы всеИспользуйте команду ниже в cmd или GIT Bash или другом приглашении
$ npm config set proxy " http://192.168.1.101:4128 "
$ npm config set https-proxy " http://192.168.1.101:4128 "
где 192.168.1.101 - ip прокси, а 4128 - порт. изменить в соответствии с настройками прокси. это работает для меня.
источник
Многие приложения (например, npm) могут использовать настройку прокси из переменных среды пользователя.
Вы можете просто добавить в свою среду следующие переменные HTTP_PROXY и HTTPS_PROXY которые будут иметь одинаковое значение для каждой
HTTP: // пользователь: пароль @ ProxyAddress: ProxyPort
Например, если у вас Windows, вы можете добавить прокси следующим образом:
источник
В моем случае я забыл установить «http: //» в моих конфигурационных файлах (их можно найти в C: \ Users \ [USERNAME] \ .npmrc) адреса прокси. Так что вместо того, чтобы
я имел
Что, конечно, не сработало, но сообщения об ошибках тоже не сильно помогли ...
источник
На этот вопрос было много ответов выше, но ни один из них не помог мне. Все они упомянуты, чтобы добавить
http://
префикс. Я тоже добавил это. Все не удалось.Это наконец работает после того, как я случайно удалил
http://
префикс. Конечный конфиг выглядит так:Я не знаю логики этого, но это сработало. Если ни один из приведенных выше ответов не работает для вас, возможно, вы можете попробовать этот способ. Надеюсь, что это полезно.
источник
На странице curl есть хорошая информация о проблемах с SSL и сертификатами . Я основываю большую часть своего ответа на информации там.
Использование strict-ssl false - плохая практика и может создавать проблемы. Вместо этого мы можем добавить сертификат, который вводится сертификатом «человек посередине».
Как решить это на Windows:
openssl x509 -inform DES -in **rootcert**.cer -out outcert.pem -text
где rootcert - имя файла сертификата, сохраненного на шаге 5.
npm config set cafile **C:\Users\username\cacert.pem
где C: \ Users \ username \ cacert.pem - это путь из шага 10.
npm config set strict-ssl true
Уф! Мы сделали это! Теперь npm может понять, как подключиться. Бонус в том, что вы можете указать curl использовать тот же cabundle.pem, и он также будет понимать HTTP.
источник
Вот шаги, которые я выполнил (Windows):
C:\Users\<WIN_USERNAME>\.npmrc
Экспортируйте сертификат в свою файловую систему со следующего адреса: https://registry.npmjs.org
Перейдите в расположение экспортированного сертификата и введите следующую команду:
npm config set cafile npm_certificate.cer
Добавьте следующие изменения в файл:
registry=https://registry.npmjs.org/ strict-ssl=false https-proxy=http://[proxy_user]:[proxy_password]@[proxy_ip]:[proxy_port]/ cafile=npm_certificate.cer
Теперь вы должны быть готовы к работе!
источник
Моя проблема сводилась к глупой ошибке с моей стороны. Поскольку однажды я быстро поместил свои прокси в файл Windows * .bat (http_proxy, https_proxy и ftp_proxy), я забыл экранировать специальные символы для домена \ user (% 5C) в кодированном URL-адресе и пароль, имеющий знак вопроса '?' (% 3F). То есть, получив кодированную команду, не забывайте экранировать «%» в команде bat-файла.
Я изменился
в
Может быть, это крайний случай, но, надеюсь, это кому-нибудь поможет.
источник
когда я даю без префикса http / http в настройках прокси, npm не работает, даже когда хост и порт прокси имеют правильные значения. Работало только после добавления префикса протокола.
источник
Просто откройте новый терминал и введите
npm config edit
иnpm config -g edit
. Сброс к значениям по умолчанию. После этого закройте терминал, откройте новый и введите,npm --without-ssl --insecure --proxy http://username:password@proxy:8080 install <package>
если вам нужно глобально, просто добавьте-g
.Это сработало для меня, надеюсь, это сработает для вас :)
источник