[Go] go mod 设置GOPROXY环境变量中的direct意义

当开启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


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

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

root用户下

/root/.config/go/env

也就是

$HOME/.config/go/env

开源作品

GO-FLY,一套可私有化部署的免费开源客服系统,安装过程不超过五分钟(超过你打我 !),基于Golang开发,二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的网页在线客服系统,致力于帮助广大开发者/中小站长快速整合私有客服功能
github地址:go-fly
官网地址:https://gofly.sopans.com

赞赏作者

微信交流

原文地址:https://www.cnblogs.com/taoshihan/p/14473934.html