一直以为开了全局的代理,所有的网络都会走代理,但是发现我错了。
因为一些软件的所使用的在不同的协议层,有的在会话层,有的在应用层,这样的就造成代理不生效了。(这块我了解的也不是非常好,建议大家直接看OSI 七层模型)
所以,之前我一直用的是软件提供设置代理的入口,举个列子,像git拉取仓库比较慢的话,可以通过配置代理的入口,也就是这条命令
#有些朋友好像为什么设置http和socket5其实设置哪种都是可以的,具体看你们自己代理软件都支持的协议有哪些,就可以了 #记得修改端口号,比如我的是1080,记得改成自己代理软件的所配置的端口号 #下面配置的都是全局,如果需要设置局部的把【--global】删除即可。 #http代理 git config --global http.proxy 'http://127.0.0.1:1080' #https代理 git config --global https.proxy 'http://127.0.0.1:1080' #http代理 git config --global http.proxy 'socks5://127.0.0.1:1080' #https代理 git config --global https.proxy 'socks5://127.0.0.1:1080' #取消http代理 git config --global --unset http.proxy #取消https代理 git config --global --unset https.proxy说完了,git的设置代理后,其实在Windows系统下设置cmd命令行(终端)走代理,也是类似的方法。
首先打开我们的cmd窗口,然后输入以下的命令
set HTTP_PROXY=http://127.0.0.1:1080 set HTTPS_PROXY=http://127.0.0.1:1080然后就可以愉快的去拉取Github里面代码了,不过要注意的都是,上面设置的命令行代码作用的范围是一次性的,也就是关闭cmd窗口后,就失效了,如果需要永久生效的话,是需要配置系统的环境变量的,配置方法如下:
1、右键【我的电脑 】-> 属性 -> 高级系统设置 -> 高级 -> 环境变量
2、添加如下的系统环境变量(对应的值记得修改)
当然了,最好还是验证是否生效了,我用的curl来验证,命令如下
#一些参数解释 #-v verbose (print errors/warnings while in event loop) #-vv very verbose (also print client commands/reponses) #-vvv extremely verbose (also print internal state transitions) #-k 关闭SSL证书检查 #更多配置命令,请看https://www.jianshu.com/p/07c4dddae43a curl -vvvk https://www.google.com