git设置代理
开vpn之后,当你还在为能正常打开Github、Youtobe而窃喜时,不知道你是否也遇到过这种情况:
- 但当你使用git工具将本地代码文件上传Github时,却总是出现
Failed to connect to github.com port 443: Timed out
或者OpenSSL SSL_read: Connection was reset, errno 10054
等git push失败
的情况,让人火大。 - 或者发现
git clone
命令速度特别慢,有时还经常卡掉,这很让人着急。
总之,就四个字:失败、火大!于是搜各种教程,经过各种折腾,终于找到解决方案,归根结底还是因为代理设置的不正确!!!本文记录一下解决的方案。
问题描述
简单来说,就是所使用的vpn正常,但是上传或下载Github文件时就很慢很卡,甚至连接不上出现报错情况。如果遇到这种情况,可以使用下面的方法解决。
如果检查自己的vpn是否正常呢?有两种简单办法
- 最简单的当然就是打开一个国外网站,比如YouTube等,如果能打开,证明梯子没问题;
- 另一种,就是
win+r
打开命令行,输入ping github.com
看看能不能连上要使用的Github;
解决方法
遇到上述问题,就是代理设置不正确。可以通过以下命令查看和设置理。
1、代理查询
查看自己是否以前设置过代理,在CMD中输入以下命令进行查询
|
|
如果没有记录显示,则说明本电脑还没有配置过代理,否则需要先将代理进行删除,再进行后续的重新添加。
2、代理取消
如果执行上述代码之后,发现有代理存在,则执行下述命令,先将代理取移除
|
|
git config
是 Git 用于配置和管理各种参数的命令,可以设置和修改与 Git 相关的配置选项。
http.proxy
是用于设置 Git 在进行 HTTP 或 HTTPS 连接时使用的代理服务器。
3、代理设置
首先需要获取当前所使用vpn的代理服务器地址,格式为:127.0.0.1:xxxx
(我的是7879)。这里一定要注意,不要照抄网上的端口号,需要根据自己的服务器进行修改,否则报错。得到代理服务器地址之后,使用如下命令配置代理
|
|
如何知道自己的代理服务器地址呢?两种办法:
- 一是通过自己的vpn查看,打开自己的
vpn-设置-端口设置/端口号
的选项,这个就是代理服务器的端口- 打开电脑的
控制面板-网络和Internet-Internet选项-连接-局域网设置
,然后就可以看到代理服务器的地址了,见图通过这两种方式得到的应该是一样的。
然后就配置成功了!就可以成功上传和下载文件了。需要注意的是,有少数人刚配置后,效果显著,但用一段时间之后,发现git push
上传文件时仍然失败,这时候按照第二个步骤将代理重新取消掉就好了,如果有过一段时间又不行了,在重新配置就行,这样反复操作可以解决,但为什么这样不得而知。
原理介绍
代理服务器就是你的电脑和互联网的中介。当您访问外网时 , 你的请求首先转发到代理服务器,然后代理服务器替你访问外网,并将结果原封不动的给你的电脑,这样你的电脑就可以看到外网的内容啦。
使用vpn后无法正常上网
解决方法
很多同学使用vpn访问外网,但当关闭VPN后,却发现没有办法正常连接到互联网了。解决方法如下:
|
|
将为LAN使用代理服务器(这些设置不用于拨号或VPN连接)
前面的√
取消掉可以了(开vpn的时候勾上是正常的,如果关掉vpn后能正常上网就不用取消)。到此为止不出意外就可以正常上网啦!
原因分析
一句话:可能是由于VPN代理软件修改了电脑IP地址的获取方式。
通常情况下,计算机的IP地址是通过动态主机配置协议(DHCP)从您的路由器或网络提供商的服务器上获取的。使用VPN代理软件时,它会在您的计算机和互联网之间创建一个安全的连接。在这种连接中,VPN软件会通过在您的计算机和VPN服务器之间建立虚拟通道来代理您的网络流量。当您的网络流量通过VPN服务器时,服务器会为您的流量分配一个新的IP地址。
通过这些步骤,VPN代理软件成功修改了您计算机的IP地址获取方式。现在,计算机使用的是VPN服务器分配的IP地址,而不是原本的IP地址。这样做可以帮助您隐藏真实的IP地址并实现匿名上网,同时提供加密保护,确保您的网络流量在传输过程中得到安全保护。同时,当我们关闭VPN后,由于电脑IP地址任然为VPN分配的IP地址(而此时我们已经关闭了代理服务器的连接),这就导致我们无法正常访问互联网了。