Go 项目依赖下载慢时应配置 GOPROXY 为 https://goproxy.cn,direct,该代理由七牛云维护,支持 HTTPS、校验与缓存,且设置后 go mod tidy 等命令可实现秒级下载。

在 Go 项目开发中,依赖下载慢通常是因为默认从国外的 proxy.golang.org 或直接从 GitHub 等源拉取模块,国内网络环境下容易超时或失败。使用 GOPROXY 环境变量 配置代理,是最直接、官方推荐的加速方式。
确认当前 GOPROXY 设置
运行以下命令查看当前代理配置:
go env GOPROXY
如果输出是 https://proxy.golang.org,direct 或空值,说明未启用国内镜像代理,需要手动设置。
设置国内可信 GOPROXY(推荐)
国内主流且稳定可靠的 Go 代理有:
立即学习“go 语言免费学习笔记(深入)”;
- https://goproxy.cn(由七牛云维护,支持 HTTPS、校验、缓存,中文文档完善)
- https://mirrors.aliyun.com/goproxy/(阿里云 镜像,响应快,兼容性好)
- https://goproxy.io(已停止维护,不建议新项目使用)
推荐优先使用 goproxy.cn,设置方法如下:
go env -w GOPROXY=https://goproxy.cn,direct
其中 direct 表示当代理无法命中模块时,回退到直接从模块源(如 GitHub)下载,确保兜底可用。
临时覆盖代理(调试或单次使用)
若不想永久修改环境变量,可在命令前临时指定:
GOPROXY=https://goproxy.cn go mod download
该方式对当前命令生效,不影响全局配置,适合 CI/CD 脚本或临时验证。
配合 GOSUMDB 和 GOPRIVATE(进阶安全配置)
启用 GOPROXY 后,建议同步配置:
- GOSUMDB=off 或 GOSUMDB=sum.golang.org:Go 默认校验模块哈希,但某些代理可能不转发校验服务。国内镜像如
goproxy.cn已内置校验支持,可保持默认;若遇校验失败,可临时设为GOSUMDB=off(不推荐长期关闭) - GOPRIVATE=git.example.com,github.com/mycorp/*:对私有仓库跳过代理和校验,避免敏感代码泄露或访问失败
例如设置私有模块不走代理:
go env -w GOPRIVATE=”git.mycompany.com,github.com/internal/*”
配置完成后,执行 go mod tidy 或 go build 即可明显感受到依赖拉取速度提升,多数模块秒级完成。






























