Por que npm está lutando para se conectar à internet no meu Arch?

1

Então, ao baixar o Atom Text Editor através do comando yaourt -S atom-editor , mas recebo estes erros:

Installing build modules...
npm ERR! Linux 4.5.4-1-ARCH
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "--userconfig=/tmp/yaourt-tmp-shazam/aur-atom-editor-arch/src/atom-1.8.0/build/.npmrc" "install"
npm ERR! node v6.2.0
npm ERR! npm  v3.9.3
npm ERR! code ECONNREFUSED
npm ERR! errno ECONNREFUSED
npm ERR! syscall connect

npm ERR! Error: connect ECONNREFUSED 199.27.76.162:443
npm ERR!     at Object.exports._errnoException (util.js:953:11)
npm ERR!     at exports._exceptionWithHostPort (util.js:976:20)
npm ERR!     at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1080:14)
npm ERR!  { Error: connect ECONNREFUSED 199.27.76.162:443
npm ERR!     at Object.exports._errnoException (util.js:953:11)
npm ERR!     at exports._exceptionWithHostPort (util.js:976:20)
npm ERR!     at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1080:14)
npm ERR!   code: 'ECONNREFUSED',
npm ERR!   errno: 'ECONNREFUSED',
npm ERR!   syscall: 'connect',
npm ERR!   address: '199.27.76.162',
npm ERR!   port: 443,
npm ERR!   parent: 'atom-build' }
npm ERR! 
npm ERR! If you are behind a proxy, please make sure that the
npm ERR! 'proxy' config is set properly.  See: 'npm help config'

npm ERR! Please include the following file with any support request:
npm ERR!     /tmp/yaourt-tmp-shazam/aur-atom-editor-arch/src/atom-1.8.0/build/npm-debug.log
Node: v6.2.0
npm: v3.9.3

Já consegui configurar a variável de ambiente com export all_proxy=proxy.iisc.ernet.in:3128 , que é meu proxy corporativo. Eu também configurei o proxy npm com npm set all_proxy proxy.iisc.ernet.in:3128 . Eu estou configurando a variável errada no npm?

Observação : esta é uma ramificação de esta pergunta.

    
por Sharan Duggirala 10.06.2016 / 11:18

2 respostas

1
O

CLTM pode ser necessário se o seu proxy corporativo usar o NTLM da Microsoft.

Depois de ter o servidor proxy cntlm configurado para upstream proxy (que é seu proxy corporativo), basta configurar npm para usá-lo:

npm config set proxy http://127.0.0.1:3128
npm config set https-proxy http://127.0.0.1:3128

Você deve ter os dois http e https . A maioria dos gerenciadores de pacotes funciona melhor se o proxy estiver configurado no arquivo de configuração, em oposição à variável de ambiente, o que é melhor para executar scripts a partir da linha de comando.

No entanto, seu código de erro diz "conexão recusada", portanto, pode ser firewall de saída, bloqueio do SELinux ou porta errada para o host do proxy. Tente telnetar do mesmo usuário para ver se funciona e se a porta está aberta no proxy.

    
por 14.06.2016 / 19:59
2

De acordo com a ajuda de configuração do npm , ela derivará apenas as configurações de proxy do ambiente

If the HTTPS_PROXY or https_proxy or HTTP_PROXY or http_proxy environment variables are set

(da seção https_proxy , a seção proxy menciona apenas HTTP_PROXY e http_proxy ).

A ajuda também não lista all_proxy como uma chave de configuração em qualquer lugar, apenas https_proxy e proxy , o que explica por que suas configurações all_proxy não têm nenhum efeito.

    
por 10.06.2016 / 11:37