4

Это проблема при запуске диспетчера пакетов Nodejs (NPM) в Windows в сети, в которой работает ActiveDirectory, и проблема, по-видимому, заключается в том, что я работаю за корпоративным прокси-сервером.

Я хочу, чтобы NPM INSTALL работал ...

У нас есть прокси, который использует WPAD и аутентификацию.

Из Wpad.dat я получил полное доменное имя и порт прокси-сервера (см. Ниже).

я использовал

NPM CONFIG SET PROXY = http://<domain>%5C<username>:<passwordwith#>@ddcrpit311v1.corp.<company>.global:8080

установить информацию о прокси (с именем пользователя и паролем), а также

NPM CONFIG SET HTTPS-PROXY = <as above>

Я поставил

NPM CONFIG SET registry = http://registry.npmjs.org/

так что мне не нужно беспокоиться о SSL и (на всякий случай)

NPM CONFIG SET strict-ssl = false

Тем не менее я получаю ошибки:

>npm install sax-js
npm http GET http://registry.npmjs.org/sax-js
npm http GET http://registry.npmjs.org/sax-js
npm http GET http://registry.npmjs.org/sax-js
npm ERR! network getaddrinfo ENOTFOUND
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 settin
gs.
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! System Windows_NT 5.1.2600
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "sax-js"
npm ERR! cwd C:\Documents and Settings\morsli00
npm ERR! node -v v0.10.10
npm ERR! npm -v 1.2.25
npm ERR! syscall getaddrinfo
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Documents and Settings\morsli00\npm-debug.log
npm ERR! not ok code 0

Из журнала выглядит следующее важно:

20 verbose url resolving [ 'http://registry.npmjs.org/', './sax-js' ]
21 verbose url resolved http://registry.npmjs.org/sax-js
22 info trying registry request attempt 1 at 16:00:20
23 http GET http://registry.npmjs.org/sax-js
24 info retry will retry, error on last attempt: Error: getaddrinfo ENOTFOUND
25 info trying registry request attempt 2 at 16:00:31
26 http GET http://registry.npmjs.org/sax-js
27 info retry will retry, error on last attempt: Error: getaddrinfo ENOTFOUND
28 info trying registry request attempt 3 at 16:01:31
29 http GET http://registry.npmjs.org/sax-js
30 silly lockFile 4d5ae745-sax-js sax-js@
31 silly lockFile 4d5ae745-sax-js sax-js@
32 error network getaddrinfo ENOTFOUND
32 error network This is most likely not a problem with npm itself
32 error network and is related to network connectivity.
32 error network In most cases you are behind a proxy or have bad network settings.
32 error network
32 error network If you are behind a proxy, please make sure that the
32 error network 'proxy' config is set properly.  See: 'npm help config'
33 error System Windows_NT 5.1.2600
34 error command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "sax-js"
35 error cwd C:\Documents and Settings\morsli00
36 error node -v v0.10.10
37 error npm -v 1.2.25
38 error syscall getaddrinfo
39 error code ENOTFOUND
40 error errno ENOTFOUND
41 verbose exit [ 1, true ]

Я пробовал без% 5C, а также /\ все с тем же результатом.

Я попытался настроить fiddler2 для работы в качестве обратного прокси-сервера и установил адрес прокси localhost:8888 и настроил fiddler для подключения к прокси-серверу, но затем я также столкнулся с ошибками.

Есть ли простая прокси-программа, которую я могу установить в качестве обратного прокси-сервера, которая будет проходить аутентификацию для меня? В Node есть что попробовать?

Любые идеи приветствуются!

3 ответа3

3

Попробуйте добавить двойные кавычки в ваши команды:

NPM CONFIG SET PROXY = "http://<domain>%5C<username>:<passwordwith#>@ddcrpit311v1.corp.<company>.global:8080"

а также :

NPM CONFIG SET HTTPS-PROXY = "http://<domain>%5C<username>:<passwordwith#>@ddcrpit311v1.corp.<company>.global:8080"

Это сработало для меня. ;)

1

Это мой последний и рабочий файл .npmrc

proxy=http://DOMAIN%5Cusername:password@proxyaddress:8080/ https-proxy=http://DOMAIN%5Cusername:password@proxyaddress:8080/ loglevel=verbose

0

У меня работает в Ubuntu 16.04


Конфигурация npm устанавливает прокси 'http://:'

Конфигурация npm установлена https-прокси 'http://:'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .