如何配置 go 命令以使用代理?

新手上路,请多包涵

我想运行 go install 来安装 游览,但找不到使用代理访问互联网的选项。我不需要它只是为了游览,而是为了一般的 Go 开发。

如何配置 Go 以使用代理。

原文由 oers 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 747
2 个回答

Go 程序理解环境变量 http_proxyno_proxy ,但这还不够,因为 go get 使用源代码控制管理器检索。因此,您还必须为您的 SCM 设置 HTTP 代理设置。将 用于 Mercurial, 将其 用于 Git。

http_proxy 值可以像 http://user:password@host:port/ 。用户、密码和端口部分是可选的。 no_proxy 是不应通过代理连接的服务器的逗号分隔列表。它的值可以像 foo.com,bar.net:4000

您可以在 bash_profile 中设置这些环境变量,但是如果您想将它们的使用限制为 go ,您可以像这样运行它:

 $ http_proxy=127.0.0.1:8080 go get code.google.com/p/go.crypto/bcrypt

如果那是您一直想要的,请设置此别名以避免每次都键入代理部分:

 $ alias go='http_proxy=127.0.0.1:8080 go'

从现在开始,您可以正常使用 go ,但它使用您的 HTTP 代理。

原文由 Mostafa 发布,翻译遵循 CC BY-SA 3.0 许可协议

在 Windows 命令行上:

set http_proxy=http://[user]:[pass]@[proxy_ip]:[proxy_port]/ set https_proxy=http://[user]:[pass]@[proxy_ip]:[proxy_port]/

…然后导航到 https://github.com/ 并下载 GitHub 证书(我将名称设置为 goland_cert.cer

…现在执行 OpenSSL 命令将其导出为 PEM 格式

openssl x509 -inform der -in goland_cert.cer -out goland_cert.pem

…最后在 git global config 中设置证书

git config --global http.sslCAInfo C:/Users/[User]/certs/golang_cert.pem

原文由 Marco 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题