我后面的防火墙以ntlm模式运行Microsoft ISA服务器。哈希任何人成功地获得他们的Ruby宝石安装/更新通过Ruby SSPI宝石或其他方法?
... 还是我太懒了?
注意:rubysspi-1.2.4不起作用。
这也适用于“igem”,IronRuby项目的一部分
我后面的防火墙以ntlm模式运行Microsoft ISA服务器。哈希任何人成功地获得他们的Ruby宝石安装/更新通过Ruby SSPI宝石或其他方法?
... 还是我太懒了?
注意:rubysspi-1.2.4不起作用。
这也适用于“igem”,IronRuby项目的一部分
当前回答
如果你在通过代理进行身份验证时遇到问题,请确保按照下面的格式设置环境变量:
set HTTP_PROXY=some.proxy.com
set HTTP_PROXY_USER=user
set HTTP_PROXY_PASS=password
user:password@语法似乎不起作用,在Stack Overflow和各种论坛帖子中也有一些命名糟糕的环境变量。
同时也要注意,你的gems可能需要一段时间才能开始下载。一开始我以为这行不通,但经过耐心之后,他们开始按预期下载。
其他回答
与其编辑批处理文件(对于其他Ruby宝石,例如Bundler,您可能不得不这样做),不如只做一次,并正确地进行。
在Windows上,在我的公司代理之后,我所要做的就是将HTTP_PROXY环境变量添加到我的系统中。
开始->右键单击计算机->属性 选择“高级系统设置” 单击“高级->环境变量” 创建一个名为“HTTP_PROXY”的新系统变量,并将其值设置为您的代理服务器 重新启动或注销,然后重新登录
根据你的身份验证要求,HTTP_PROXY值可以简单到:
http://proxy-server-name
或者像其他人指出的那样更复杂
http://username:password@proxy-server-name:port-number
如果您使用的是*nix系统,请使用以下命令:
export http_proxy=http://${proxy.host}:${port}
export https_proxy=http://${proxy.host}:${port}
然后试试:
gem install ${gem_name}
关于这个话题的帖子很多,为了帮助其他人节省尝试不同解决方案的时间,这里是我花几个小时修补的最终结果。
目前互联网上有三个解决方案: rubysspi apserver cntlm
rubysspi只能在Windows机器AFAIK上工作,因为它依赖于Win32Api库。因此,如果您在Windows系统上试图通过代理运行,这是适合您的解决方案。如果你使用的是Linux发行版,那你就不走运了。
Apserver似乎是一个死气沉沉的项目。我看到的文章中列出的链接指向sourceforge的404页面。我在sourceforge上搜索“apserver”没有返回任何东西。
我看到的cntlm的sourceforge链接会重定向到http://cntlm.awk.cz/,但是超时了。在sourceforge上搜索可以找到这个链接:http://sourceforge.net/projects/cntlm/
在下载和配置cntlm之后,我已经设法通过代理安装了一个gem,因此这似乎是Linux发行版的最佳解决方案。
我一直在工作时使用cntlm (http://cntlm.sourceforge.net/)。配置非常类似于ntlmaps。
Gem安装——http-proxy http://localhost:3128 _name_of_gem_
工作得很好,也允许我把我的Ubuntu盒子连接到ISA代理。
查看http://cntlm.wiki.sourceforge.net/获取更多信息
如果你在通过代理进行身份验证时遇到问题,请确保按照下面的格式设置环境变量:
set HTTP_PROXY=some.proxy.com
set HTTP_PROXY_USER=user
set HTTP_PROXY_PASS=password
user:password@语法似乎不起作用,在Stack Overflow和各种论坛帖子中也有一些命名糟糕的环境变量。
同时也要注意,你的gems可能需要一段时间才能开始下载。一开始我以为这行不通,但经过耐心之后,他们开始按预期下载。