【问题标题】:Nuget behind Corporate proxy - External sources work, but internal does not企业代理背后的 Nuget - 外部来源有效,但内部无效
【发布时间】:2017-09-28 10:59:20
【问题描述】:

因此,为了在我的组织内使用 NuGet 和其他开发工具,我们必须在用户特定的环境变量中为每个用户设置系统范围的环境变量“http_proxy”。

现在,这适用于我们迄今为止尝试过的所有内容,所有包管理器(如 NuGet、NPM、chocolatey)都可以与外部存储库一起正常工作。

最近我们尝试在我们的构建服务器上设置一个内部 NuGet 服务器来内部托管通用包。每个人都可以浏览到服务器所在的 URL:-ip-/nuget,我们可以看到 XML 提要。当我们尝试使用 nuget.exe 或 Visual Studio 2017 连接到此源时,问题就出现了,在 100000ms 之后查找包的请求全部超时,我猜这是默认超时。

我们还可以准确地浏览到在任何浏览器中超时的 URL,没有任何问题。我假设这与我们的内部代理尝试将流量从网络中路由出去有关,但我无法验证这一点。

我们有什么办法可以试试看能否解决这个问题?

【问题讨论】:

  • 您是否按照docs.microsoft.com/en-us/nuget/schema/nuget-config-file 中的说明在nuget.config 中配置了代理? externals 可能会起作用,因为它使用 https 而不是 http 用于 nuget.org
  • 最初我们使用 nuget.config 配置设置进行配置,但我们发现我们可以将其完全替换为环境变量并且它仍然有效,我将尝试恢复它以查看它是否有帮助。
  • @MartinUllrich 不幸的是,我还尝试将提要切换到 https,并生成我自己的 SSL 密钥。现在失败所需的时间更少,并给我一个 503 服务不可用错误。
  • @LexWebb 我在 2017 年遇到了和你一样的问题。我想你在此期间已经找到了解决方案,介意你在这里分享一下吗?

标签: visual-studio proxy nuget


【解决方案1】:

我们有什么办法可以试试看能否解决这个问题?

由于您还可以在任何浏览器中准确浏览到超时的 URL,而您的办公系统没有问题,因此您的办公环境中应该存在一些互联网限制。因此,我建议您联系您的办公室 IT 以确认他们是否添加了任何限制以及是否使用了任何代理。如果他们正在使用一些代理,您需要在存储在C:\Users\user name\AppData\Roaming\NuGet 的 NuGet.Config 文件中设置代理设置:

<configuration>

    <config>
        <add key="http_proxy" value="http://my.proxy.address:port" />
        <add key="http_proxy.user" value="mydomain\myUserName" />
        <add key="http_proxy.password" value="base64encodedHopefullyEncryptedPassword" />
    </config>

</configuration>

详情请参考此链接:NuGet Behind Proxy

【讨论】:

  • 就是这样,我们已经尝试过了,为了修复外部 NuGet 源,例如官方 NuGet 源,这允许我们下载和浏览包,它现在只有不起作用的内部源(我们的构建服务器)..
  • 我也有同样的问题,但我的办公室似乎没有其他人有这个问题,我不知道如何解决它。我检查了此配置,以及 Internet 选项代理设置和 TFS 代理设置。
  • 更新文件后记得重启 Visual Studio ?
猜你喜欢
  • 2021-01-14
  • 2012-02-19
  • 2015-12-25
  • 2019-03-14
  • 2015-09-20
  • 1970-01-01
  • 2012-09-27
  • 1970-01-01
相关资源
最近更新 更多