Як очистити https-налаштування проксі NPM?


268

Як я можу очистити попередні налаштування ssl-проксі NPM? ну, я шукаю багато, але все, що я отримав, - це головним чином про те, як setпроксі в корпоративній мережі.

Я намагаюся встановити проксі на нічого:

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

Перша команда передає ще другу, попереджає:

npm WARN invalid config proxy=""
npm WARN invalid config Must be a full url with 'http://'

чи це попередження нехтування, і я успішно очистив налаштування проксі-сервера?


7
Ви можете вручну видалити налаштування проксі з <user_dir>/.npmrcфайлу
Salman

Відповіді:


432

Ніщо з вищезазначеного мені не допомогло, але це зробило:

npm config rm proxy
npm config rm https-proxy

Джерело: http://jonathanblog2000.blogspot.ch/2013/11/set-and-reset-proxy-for-git-and-npm.html


Працює на вікнах
Леон Африка

2
Можна npm config listперевірити конфігурацію проксі, можливо, npm config rm http-proxyі потрібна
Тіна Чен

@Anatolii має відповідь на очищення налаштувань глобальної конфігурації нижче. rmПараметр не працює на старих версіях npmдля Windows - см @ відповідь Аарона нижче.
дан

133

Спробуйте видалити їх за допомогою:

npm config delete proxy
npm config delete https-proxy

Він видає те саме попередження.
Аллан Руїн

7
не повинно бути npm config видалити проксі?
Франк Фу

4
Це робота на windows. Спробуйте npm config rm http-proxyна linux
Sydwell

42
npm config rm proxy
npm config rm https-proxy
unset HTTP_PROXY
unset HTTPS_PROXY
unset http_proxy
unset https_proxy

Чорт нарешті, це робить трюк у Debian Jessie із встановленим privoxy (видаленням реклами). Дякую :-)


Це було правильне рішення на OSX 10.11, спробував усе інше
Shooky

Це рішення працює, але, схоже, не тримається, після виходу з системи / перезавантаження у мене знову з’явилася та сама проблема. Чи може хтось пояснити, де встановлюються ці змінні? @privoxyd
Shooky

33

На це вже відповіли, але я думаю, що --globalконфігурація не покрита належним чином.

Запустивши, npm config rm proxyви видалите проксі з конфігурації користувача .
Це можна легко перевірити, запустивши: npm config list.

Якщо в глобальній конфігурації встановлений proxyабо https-proxyвстановлений параметр, вам потрібно скористатися --globalкомандою для його видалення.

Тож наприкінці це очистить проксі-сервери як локальних, так і глобальних конфігурацій:

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

2
Ця глобальна річ зробила для мене хитрість, просто видалення з конфігурації користувача не вплинуло. Хоча він працює на старій версії NPM. #thanksanatolii
Matti.b

25

В останній версії npm rm proxyне працює. Замість використанняnpm rm http-proxy

npm config rm proxy npm config rm https-proxy


21

За значенням за замовчуванням npmшукає пакунки з https://registry.npmjs.org. Те, що вам також потрібно зробити, - це переосмислення registryта strict-sslзначення.

npm config set registry "http://registry.npmjs.org"
npm config set strict-ssl false

Це приємне рішення, щоб подолати всю проблему npm за проксі.
markau

21

Якщо ви переглянете документацію npm config , вона говорить:

проксі

За замовчуванням: HTTP_PROXY або змінна середовище http_proxy, або null

Тип: URL-адреса

Відповідно до цього, для відключення використання проксі-сервера proxyпотрібно встановити значення null. Щоб встановити проксі - значення в нуль, один має переконатися в тому, що HTTP_PROXYабо http_proxyзмінної оточенні не встановлено. Тож скасуйте ці змінні середовища та переконайтесь, що це npm config ls -lпоказано proxy = null.

Також важливо зазначити, що:

  • Видалення параметрів конфігурації http_proxy та https_proxy не допоможе, якщо у вас все ще є змінна середовище HTTP_PROXY або http_proxy, яка встановлена ​​на щось і
  • Настроювання реєстру на використання http: // та встановлення строгої-ssl на false не допоможе вам, якщо ви все одно не знаходитесь за проксі-сервером, а HTTP_PROXY встановлено на щось.

Було б краще, якби npm зробив тип проксі-налаштування на булевий, щоб увімкнути / вимкнути використання проксі-сервера. Або вони можуть ввести нову настройку use_proxyтипу булевого типу.


3
Це допомогло мені, а всі інші пропозиції ( delete& rm) видалити https-proxyта proxyналаштувати лише для вашого локального конфігурації npm - не за замовчуванням, встановивши "null", це перевершує ці параметри за замовчуванням
Wayne Austin

npm 3 більше не шанує --proxy=null, хтось знає подробиці?
C-Otto

3
Відповісти на моє запитання, --no-proxyздається, працює
C-Otto,

@ C-Otto Дякую тобі за те, що написав єдину відповідь, яка працювала після години удару головою!
Мустафа Аламмар

@ C-Otto Дуже дякую. Це єдине рішення, яке працювало для мене. Я спробував сотні інших рішень, але нічого не вийшло. "--но-проксі" зробив трюк. Але чи знаєте ви, чому він вибирає старі настройки проксі без опції '--no-proxy' і звідки?
Локеш Джайн

21

Я використовував наведені нижче команди для видалення будь-якого набору проксі:

    npm config rm proxy
    npm config rm https-proxy

І це вирішило мою проблему :)


16

існує простий спосіб видалення або видалення проксі-серверів npm.

npm config delete proxy
npm config delete https-proxy

14

У мене була однакова проблема колись.
Виконайте такі дії, щоб видалити значення проксі-сервера:

1.Щоб видалити проксі-сервер у npm:
(-g важливо)
npm config delete proxy -g
npm config delete http-proxy -g
npm config delete https-proxy -g

Перевірте конфігураційний файл npm, використовуючи:
npm config list

2.Щоб видалити системний проксі: set HTTP_PROXY=null set HTTPS_PROXY=null

Тепер закрийте командний рядок і відкрийте його для оновлення змінних (проксі).


13

Ніщо вище для мене не працювало. Мені довелося відредагувати файл ".npmrc", який знаходитиметься в домашній директорії користувача (наприклад: c: \ users \ abcuser):

http_proxy=null
registry=https://registry.npmjs.org/
strict-ssl=true
proxy=null

3
Це спрацювало для мене ... Щоб видалити проксі, ми повинні змінити реєстр як register.npmjs.org і строгий-ssl як істинний
Vicky

Я намагаюся це перевірити, чи моє налаштування .npmrc для проекту для мого проксі замінить будь-які глобальні налаштування в домашньому режимі користувача, які нас обробляють у спільному середовищі побудови.
httpste


11

Це працює

npm config delete http-proxy
npm config delete https-proxy

npm config rm proxy
npm config rm https-proxy

set HTTP_PROXY=null
set HTTPS_PROXY=null

8

Найпростіший спосіб видалити будь-яку конфігурацію з npm - це редагувати файл конфігурації npm. Для цього потрібно лише дві (2) команди; один для відкриття конфігураційного файлу npm для редагування, інший для підтвердження змін.

  1. введіть, npm config listщоб переглянути список усіх активних конфігурацій npm.
  2. наберіть, npm config editщоб відкрити текстовий редактор з конфігураціями npm. Щоб видалити рядок проксі (або просто прокоментувати її).
  3. Збережіть конфігураційний файл і закрийте його.
  4. введіть npm config listдля підтвердження видалення конфігурації проксі.

Це життя!

Я спробував все, що перераховано на цій сторінці, жодне не працювало, тоді я спробував змінити конфігурацію. Це спрацювало миттєво. (Я використовую Windows 10)


@Madhan це нож армії Швейцарії для конфігурації npm
Seun S. Lawal

7
npm config delete proxy -g

працював на мене.

-gВажливо було, оскільки спочатку було встановлено цей варіант. Ви можете перевірити конфігурації, встановлені за допомогою:

npm config list

npm write config також в ./etc
venergiac

5

Я думаю, що це не http-проксі, а проксі:

npm config set proxy="http://yourproxyhere"

Це завжди показувало, що npm ERR! If you are behind a proxy, please make sure that the npm ERR! 'proxy' config is set properly. See: 'npm help config' жоден з інших варіантів не працював. Цей працював найкраще.
Шияз


3

З'явилася точно така ж проблема, я постійно бачу свою конфігурацію проксі навіть після видалення файлу npmrc та видалення ключів.

Я з’ясував, що npm за замовчуванням використовує ключ http-proxy для Windows env.

Отже, зайдіть у Комп'ютер-> Властивості-> Додаткові параметри системи-> Змінні середовища та перевірте, чи не налаштований http-проксі-ключ.


Цікаво, що я перевірив змінні середовища і не маю таких речей http-proxy. Можливо, попередження справді нехтує.
Аллан Руїн

3

У моєму випадку (Linux Mint 16 на базі Ubuntu) мені довелося:

  1. npm config delete https-proxy, і також

  2. очистити https_proxyпараметр середовища Bash - як не дивно, хоча я не можу знайти таку поведінку задокументовано в будь-якому місці, НПЕ в резервних оголошення https_proxy:

    $ http_proxy='' https_proxy='' npm config get https-proxy
    null
    $ http_proxy='' xxhttps_proxy='' npm config get https-proxy
    https://1.2.3.4:8080

3

Див. Налаштування npm у файловому C:\Users\myusers.npmrcфайлі. Іноді параметри конфігурації проксі npm не застосовуються. тому варто перевірити там.


3

Спробуйте це,

npm config видалити http-проксі

npm config видалити https-проксі

npm config rm проксі

npm config rm https-проксі

встановити HTTP_PROXY = null

встановити HTTPS_PROXY = null


2
npm config delete http-proxy
npm config delete https-proxy

npm config delete proxy -g
npm config delete http-proxy -g

тоді

npm config get proxy

нуль

також

npm i -g bower to update

npm мав помилку на проксі


2

виконати список конфігурації npm, він перерахує всі значення проксі .. у моєму випадку значення проксі було отримано у вигляді глобального файлу npmrc, видалило його та змогло завершити встановлення npm на моїй машині Windows


1

Я звик

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

і це працювало на мене.

З найкращими побажаннями


1

це працює для мене фім

proxy=http://<username>:<pass>@proxyhost:<port>

https-proxy=http://<uname>:<pass>@proxyhost:<port>

зразок в моєму випадку ім'я користувача: uname та пароль: pword

npm config set proxy=http://uname:pword@192.168.5.8:8080

npm config set https-proxy=http://uname:pword@192.168.5.8:8080

Це налаштування, ми шукаємо зрозуміле, що є прямо протилежним
P

1

Я боровся з цим віками. Нарешті я зайшов у файл .npmrc (який можна знайти в каталозі користувача, а потім ім'я користувача, тобто C: \ Users \ erikj / .npmrc), відкрив його текстовим редактором, видалив вручну будь-який проксі налаштувань та змінив налаштування http: // на https: //. У цьому випадку варто експериментувати, чи працюватимуть для вас http або https. У моєму випадку працювали https. Піди розберися.


1

Ну, я покину це тут, бо у мене були великі проблеми з NPM.

Я намагався змінити налаштування проксі, використовуючи, npm config set proxy "http://.../"а потім запустивши npm config get proxy. ЗАВЖДИ повертав неправильне значення, відмінне від того, яке я встановив.

Я з'ясував, що у мене було .npmrcЗАМЕЧАНО проект, який я намагався запустити, npm installі що цей файл переосмислює мою власну конфігурацію.

Отже, це було чищення значення проксі, але мені також потрібно було змінити проект .npmrcусередині папки.

Після цього все спрацювало нормально.


1

Якщо ви хочете переключитися між проксі-серверами для мережевої компанії та видалити проксі для домашньої / особистої мережі, яку ви можете використовувати --no-proxy

Використання зразка:

npm install --save-dev "@angular/animations@8.2.14" --no-proxy

1

У моєму випадку (Windows OS), після того, як всі ці команди були перераховані, npm продовжував брати проксі в налаштуваннях реєстру Windows

\ HKEY_CURRENT_USER \ Навколишнє середовище

просто видаліть там налаштування проксі, після цього я перезапустив ПК, а потім на мене працював "npm install"

Приклад


0

Модуль Http застарілий і замінений на HttpClient.

Змініть імпорт import { HttpClientModule } з на'@angular/common/http';

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.