错误'隧道插座'执行npm install时

时间:2015-10-16 04:26:37

标签: npm protractor

我在尝试执行'npm install'时遇到如下所示的错误命令。

  

错误:无法建立隧道套接字,因为= connect ECONNREFUSED 10.232.207.137:8080

我想念什么?

screenshot

20 个答案:

答案 0 :(得分:70)

如果您在代理服务器后面,请在npm中正确设置。

>npm config set proxy http://proxyhost:proxyport
>npm config set https-proxy http://proxyhost:proxyport

备注:

  1. 对于SSL / https代理,网址中的协议应为 http 而不是 https

  2. 如果您的设置位于Docker / Vagrant实例或托管VM上,请使用IP地址代替主机名代理,因为后者可能无法解析。

  3. 如果没有代理,请从npm

    中删除代理配置
    >npm config set proxy null
    >npm config set https-proxy null
    

答案 1 :(得分:14)

根据this它的代理isssues,尝试禁用ssl并将注册表设置为http而不是https。希望它有所帮助!

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

答案 2 :(得分:8)

我知道现在为时已晚,但如果将来有人遇到类似的问题,并且您确定自己有no proxy set但是您有一个名为 http_proxy 的环境变量。请删除它,然后重试。我为Fiddler设置了代理。

答案 3 :(得分:8)

以下命令可以解决您的问题:

npm config set proxy false
npm cache clean

它解决了我同样的问题。

答案 4 :(得分:5)

删除代理设置解决了问题:

如果您不使用任何代理:

npm config rm proxy
npm config rm https-proxy

如果您使用代理:

npm config set proxy http://proxyhostname:proxyport
npm config set https-proxy http://proxyhostname:proxyport

希望这可以解决您的问题:)

答案 5 :(得分:5)

就我而言,这有助于删除.npmrc配置文件

rm ~/.npmrc

答案 6 :(得分:3)

请记住在需要时设置用户名和密码:

http://USERNAME:passwd@proxyserver.co.uk:8080

示例:

npm config set proxy http://USERNAME:passwd@proxyserver.co.uk:8080

答案 7 :(得分:3)

如果您使用的是ubuntu trusty 14.0,则搜索网络并选择网络代理并将其设置为无。现在仍然可以在系统环境变量中设置代理。检查

env|grep -i proxy

您可以输出

http_proxy=http://192.168.X.X:8080/
ftp_proxy=ftp://192.168.X.X:8080/
socks_proxy=socks://192.168.X.X:8080/
https_proxy=https://192.168.X.X:8080/

将这些环境变量取消设置为:

unset(http_proxy)

以这种方式取消所有。现在运行npm install,确保用户必须具有创建module_modules文件夹的权限。

答案 8 :(得分:1)

要记住的重要一点是,如果您在公司防火墙后面,并且从.pac文件中获得了公司代理设置,那么请务必使用全局代理。

答案 9 :(得分:1)

我失去了一天试图做这项工作。 完成了这些步骤。

我打开Fiddler并检查选项Rules>自动Autenticate。

之后,搜索文件.npmrc,通常在c:\ users \中并将其用作配置:

registry=https://registry.npmjs.org/
proxy=http://username:password@127.0.0.1:8888
https-proxy=http://username:password@127.0.0.1:8888
http-proxy=http://username:password@127.0.0.1:8888
strict-ssl=false
ca=null
希望帮助别人!

答案 10 :(得分:1)

我也遇到了类似问题,并使用CNTLM进行代理配置。在我的情况下,HTTP_PROXYHTTPS_PROXY优先于http_proxyhttps_proxy,因此请注意更改所有代理变量。

env|grep -i proxy

并确保以下所有代理变量都指向同一代理。

HTTP-PROXY = "http://localhost:3128"
HTTPS-PROXY = "https://localhost:3128"
HTTPS_PROXY = "http://localhost:3128"
HTTP_PROXY = "http://localhost:3128"
PROXY = "http://localhost:3128"
http-proxy = "http://localhost:3128"
http_proxy = "http://localhost:3128"
https-proxy = "https://localhost:3128/"
https_proxy = "https://localhost:3128"
proxy = "http://localhost:3128/"
  

我知道有些变量是不必要的,但我不确定哪些是使用什么。

答案 11 :(得分:1)

当尝试通过npm安装赛普拉斯时,我遇到了同样的错误。我在代理服务器背后尝试了许多上述解决方案,但仍然看到相同的错误。最后,我发现我的WIndows系统配置(可以在命令提示符下输入'set'进行检查)具有与npm中的vonfigure不同的HTTP和HTTPS代理设置。我删除了这些代理,并立即下载了该文件。

答案 12 :(得分:0)

如果您在安全网络上使用 VPN(例如用于在家工作的 VPN),您可能会遇到权限问题。对我来说,我使用 sudo 初始化 ReactJS 开发环境解决了这个问题...

sudo npm install

答案 13 :(得分:0)

我遇到了类似问题,并尝试了此处提到的一些技术。要克服,

我清除了c:\ users \ <用户名> \。npmrc

中的重复条目

希望它可以帮助某人。 谢谢,

答案 14 :(得分:0)

npm config set registry http://registry.npmjs.org/

以上代码解决了我的问题:)

答案 15 :(得分:0)

在他的answer here中描述@Roshith的内容旁边:

  

如果您位于代理之后,请在npm中正确设置它。

var colorGroup1 = [];
var colorGroup2 = [];
var colorGroup3 = [];
$.each(dataArray, function( index, value ) {
   var vote_percentage = parseInt(value.vote_percentage);
   if(vote_percentage>=0 && vote_percentage <25)
       colorGroup1.push(value);
   if(vote_percentage>=25 && vote_percentage <50)
       colorGroup2.push(value);
   if(vote_percentage>=50 && vote_percentage <75)
       colorGroup3.push(value);
});

我还必须更改文件npm config set proxy http://proxyhost:proxyport npm config set https-proxy http://proxyhost:proxyport ,该文件在我的情况下也包含一个磨损的代理设置。我在这里更改了这些设置:

~.bashrc

使用以下命令来验证代理设置:

export HTTP_PROXY="http://proxyhost:proxyport"
export HTTPS_PROXY="http://proxyhost:proxyport"

答案 16 :(得分:0)

我花了几天时间尝试上述所有答案,并确保节点配置中的代理和其他设置正确无误。一切都是,而且仍然失败。我/我正在使用Windows 10计算机,并在公司代理后面。

由于某些遗留原因,我在用户环境变量中设置了HTTP_PROXYHTTPS_PROXY,这些变量覆盖了节点变量(我不知道),因此更正了这些变量(HTTPS_PROXY是设置为https,因此我更改为HTTP)为我解决了该问题。

当我们可以在多个地方使用相同的变量,而您不知道正在使用哪个变量时,这就是问题!

答案 17 :(得分:0)

在查看了所有答案之后,帮助我的那个是在安装命令中提供代理值。我的一个挫败感是将域名添加到我的用户名中。这需要。我使用以下示例来安装特定版本的Angular:

npm install -g @angular/cli@1.7.3 --proxy "http://username:password@proxy_server:proxy_port" --registry http://registry.npmjs.org

答案 18 :(得分:0)

如果您使用gnome,并在网络级别关闭代理,则还需要确保您的终端未启用代理

➜ gconftool-2 -a /system/http_proxy  
 host = http://localhost/
 port = 2000
 use_http_proxy = false
 use_authentication = false
 authentication_password = 
 authentication_user = 
 ignore_hosts = [localhost,127.0.0.0/8]

您可以使用

删除它
gconftool-2 -t string -s /system/http_proxy/host ""
gconftool-2 -u /system/http_proxy/port
gconftool-2 -u /system/http_proxy/host
unset http_proxy

答案 19 :(得分:0)

我遇到了类似的问题,上述解决方案都没有像我在受保护的网络中那样有效。

为了解决这个问题,我安装了Telerik的“Fiddler”工具,安装完Fiddler并再次开始安装Protractor。

希望这能解决您的问题。

感谢。