我后面的防火墙以ntlm模式运行Microsoft ISA服务器。哈希任何人成功地获得他们的Ruby宝石安装/更新通过Ruby SSPI宝石或其他方法?

... 还是我太懒了?

注意:rubysspi-1.2.4不起作用。

这也适用于“igem”,IronRuby项目的一部分


当前回答

快速回答:为安装/更新添加带有参数的代理配置

gem install --http-proxy http://host:port/ package_name

gem update --http-proxy http://host:port/ package_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/获取更多信息

如果你想使用SOCKS5代理,你可以尝试rubygems-socksproxy https://github.com/gussan/rubygems-socksproxy。

它适用于OSX 10.9.3。

对于Windows操作系统,我使用Fiddler来解决这个问题。

从www.fiddler2.com安装/运行Fiddler 运行gem: $gem install——http-proxy http://localhost:8888 $gem_name

如果您使用的是*nix系统,请使用以下命令:

export http_proxy=http://${proxy.host}:${port}
export https_proxy=http://${proxy.host}:${port}

然后试试:

gem install ${gem_name}