优秀的编程知识分享平台

网站首页 > 技术文章 正文

go get 命令一直下载不了源站的包解决方案

nanyue 2024-10-14 11:43:13 技术文章 9 ℃

go get [dai li] 工具

注:一切的前提是你有个代理,通常为socks5协议的代理服务器,有些包仅仅支持http或https,需要转换一下。

常用的四种工具: ShadowSockets、polipo、proxychains-ng、cow

1. 最简单的方式:不使用任何工具

http_proxy=x.x.x.x:port https_proxy=x.x.x.x:port go get

注:对于自己或公司的私有仓库,使用 [dai li] 就取不到了,这时候要区分,私有仓库就不要使用 [dai li] 了。(特殊情况:私有仓库需要使用 [dai li] 获取三方包,此时可以使用dep依赖包管理工具或者手动git clone维护)

2. ShadowSockets

和proxychains-ng一样出名,但配置要比一下三种麻烦,暂不介绍。

3. proxychains-ng

安装

# mac下
brew install proxychains-ng

配置 [dai li] :/usr/local/etc/proxychains.conf添加

# 服务地址和端口自己设置
socks5 x.x.x.x 1080

使用测试

# proxychains4 程序 参数
proxychains4 curl https://www.google.com

可能出现的问题
有些程序,比如一些三方包,可能不支持socks5协议访问,此时需要做代理转换,将socks5请求转为http或https的请求,常用的方式就是polipo工具,既然如此,还是直接使用polipo吧。推荐使用下面两种方式之一。

4. polipo

通过设置大部分程序都识别的的环境变量:http_proxy和https_proxy,将请求通过 [dai li] 服务器以http或https的方式发出去。

安装

# mac下
brew install polipo
# linux
sudo apt-get install polipo

配置:

polipo软件配置: mac下:/usr/local/opt/polipo/homebrew.mxcl.polipo.plist

/usr/local/opt/polipo/bin/polipo
 socksParentProxy=x.x.x.x:1080

linux下:/etc/polipo/config

socksParentProxy = "x.x.x.x:1080" 
socksProxyType = socks5

环境变量配置

export http_proxy="http://127.0.0.1:8123/"
export https_proxy="http://127.0.0.1:8123/"

启动

# 后台方式启动,linux下
service polipo restartpolipo & # 监听在8123端口

测试

curl https://www.google.com

5. cow

内部貌似使用了shadowsocks机制。
[中文文档]: https://github.com/cyfdecyf/cow

安装

# linux下
curl -L git.io/cow | bash
# mac下
brew install cow

cow软件配置:$HOME/.cow/rc

# 默认已添加
listen = http://127.0.0.1:7777 
# 填入自己拥有的socks5代理服务器地址和端口
proxy = socks5://x.x.x.x:1080

mac环境变量配置:~/.bash_profile

export http_proxy=http://127.0.0.1:7777
export https_proxy=http://127.0.0.1:7777

启动

# 后台方式启动
cow & # 监听在7777端口

测试

curl https://www.google.com

欢迎转发评论。

欢迎关注微信公众号:Python学习社

最近发表
标签列表