众所周知,Github和Golang官网是被墙的,大部分时候处于无法访问的状态,所以在Go开发时,添加依赖等操作很难从官方渠道实现,所以设置代理便成为Go开发者不可忽略的操作。
Go的代理分为临时和永久两种,以下是设置Go代理的方法
临时设置(仅当前终端有效)
在命令行中直接执行以下命令:
# 使用国内常用的代理服务
export GOPROXY=https://goproxy.cn,direct
永久设置(推荐)
根据不同操作系统,将代理设置添加到对应的配置文件中:
Linux 或 macOS:
# 编辑配置文件
vim ~/.bashrc # 或 ~/.bash_profile、~/.zshrc(根据你使用的shell)
# 在文件末尾添加
export GOPROXY=https://goproxy.cn,direct
# 使配置生效
source ~/.bashrc # 对应你编辑的配置文件
Windows(PowerShell):
# 永久设置
$env:GOPROXY = "https://goproxy.cn,direct"
[Environment]::SetEnvironmentVariable("GOPROXY", "https://goproxy.cn,direct", "User")
Windows(命令提示符):
# 永久设置
setx GOPROXY "https://goproxy.cn,direct"
常用的 Go 代理服务
https://goproxy.cn(七牛云提供,国内常用)
https://goproxy.io
https://proxy.golang.org(官方代理,国内可能无法访问)
验证代理是否生效
执行以下命令查看当前代理设置:
go env GOPROXY
如果返回你设置的代理地址,则说明设置成功。
针对特定域名的代理设置
如果需要对特定域名设置不同的代理,可以使用 GOPRIVATE 环境变量:
# 例如,对公司内部仓库不使用代理
export GOPRIVATE=*.example.com,github.com/your-company/*
这些设置将帮助你更顺畅地进行 Go 语言的包管理和开发工作。