zl程序教程

您现在的位置是:首页 >  其它

当前栏目

GOPROXY环境变量中direct的含义与用途

环境变量 含义 用途 DIRECT
2023-09-14 09:01:53 时间

当开启go mod时需要设置的环境变量GOPROXY
这个环境变量主要是用于设置 Go 模块代理,主要如下:

它的值是一个以英文逗号“,”分割的 Go module proxy 列表

作用:用于使 Go 在后续拉取模块版本时能够脱离传统的 VCS 方式从镜像站点快速拉取。它拥有一个默认:https://proxy.golang.org,direct,但很可惜 proxy.golang.org 在中国无法访问,故而建议使用 goproxy.cn 作为替代,可以执行语句:

go env -w GOPROXY=https://goproxy.cn,direct

, 后面有两个选项:direce和off

设置为 “off” :禁止 Go 在后续操作中使用任 何 Go module proxy。“direct” 为特殊指示符,用于指示 Go 回源到模块版本的源地址去抓取(比如 GitHub 等),当值列表中上一个 Go module proxy 返回 404 或 410 错误时,Go 自动尝试列表中的下一个,遇见 “direct” 时回源,遇见 EOF 时终止并抛出类似 “invalid version: unknown revision…” 的错误。

使用go env -w 写入的环境变量位置默认是

root用户下

cat /root/.config/go/env

也就是

cat $HOME/.config/go/env