配置HTTP代理后Git正常但go mod tidy无法下载Go模块,如何解决?
问题描述
我尝试通过HTTP代理下载Go包,已编辑.gitconfig文件,配置内容如下:
[http] proxyAuthMethod = basic sslVerify = false proxy = http://mydomain\username:passwd@myproxy:8080 [credential "http://myproxy:8080"] provider = generic [https] proxyAuthMethod = basic sslVerify = false proxy = http://mydomain\username:passwd@myproxy:8080
通过Git克隆仓库可正常工作(执行git clone https://github.com/ClickHouse/clickhouse-go.git -v成功),日志如下:
$ git clone https://github.com/ClickHouse/clickhouse-go.git -v Cloning into 'clickhouse-go'... warning: ----------------- SECURITY WARNING ---------------- warning: | TLS certificate verification has been disabled! | warning: --------------------------------------------------- warning: HTTPS connections may not be secure. See https://aka.ms/gcm/tlsverify for more information. warning: auto-detection of host provider took too long (>2000ms) warning: see https://aka.ms/gcm/autodetect for more information. POST git-upload-pack (185 bytes) POST git-upload-pack (gzip 4262 to 2162 bytes) remote: Enumerating objects: 7076, done. remote: Counting objects: 100% (368/368), done. remote: Compressing objects: 100% (116/116), done. remote: Total 7076 (delta 258), reused 359 (delta 251), pack-reused 6708 Receiving objects: 100% (7076/7076), 2.52 MiB | 5.12 MiB/s, done. Resolving deltas: 100% (4915/4915), done.
但执行go mod tidy添加Go模块时出现如下错误:
PS C:\Users\user\go\src> go mod tidy go: finding module for package github.com/ClickHouse/clickhouse-go/v2 main imports github.com/ClickHouse/clickhouse-go/v2: module github.com/ClickHouse/clickhouse-go/v2: Get "https://proxy.golang.org/github.com/%21click%21house/clickhouse-go/v2/@v/list": proxyconnect tcp: dial tcp: lookup http: no such host
解决方案
Go模块的代理配置与Git独立,需单独配置Go环境变量适配代理:
设置HTTP/HTTPS代理环境变量
临时生效(重启终端后需重设),在PowerShell执行:$env:HTTP_PROXY="http://mydomain\username:passwd@myproxy:8080" $env:HTTPS_PROXY="http://mydomain\username:passwd@myproxy:8080"若需永久生效,直接在系统环境变量中添加
HTTP_PROXY和HTTPS_PROXY,值与上述一致。关闭Go模块SSL验证(按需)
因Git已关闭SSL验证,Go模块需同步设置:$env:GOSSLNOVERIFY="1"永久生效同样添加至系统环境变量。
检查代理地址格式
注意代理地址中的反斜杠\,部分环境需用双反斜杠\\或正斜杠替换,确保域名+用户名的组合能被正确解析。切换Go模块代理源(可选)
若默认proxy.golang.org访问异常,可更换为其他代理源:go env -w GOPROXY=https://goproxy.io,direct
完成配置后重新执行go mod tidy即可正常下载模块。
内容的提问来源于stack exchange,提问作者Dmitry
相关产品推荐
相关产品推荐

