彻底解决github打不开的问题

针对国内经常无法访问github的问题,网上有很多关于dns配置、浏览器插件、安装桌面应用等解决办法,但结果都不尽如人意。github作为目前最知名的开源平台,每次看到下面的结果,特别让人蛋疼。

前提条件

一台可以访问github的代理服务器。不管是薅羊毛,还是付费购买的,这是本文解决无法访问的前提。

国内的云服务器厂商的服务器,针对github.com方法也存在问题,别的厂商不知道怎么样,我的阿里云是这样。大家最好准备国外的vps。因为我的vps价格不算便宜,这里就不给大家推荐了。

解决办法

1、在vps上安装代理服务

2、浏览器通过代理vps访问github

解决步骤

1、在vps上安装代理服务

我的系统:Centos8 x86_64

我这里用的tinyproxy,git地址:https://github.com/tinyproxy/tinyproxy.git

1)先clone项目

git clone https://github.com/tinyproxy/tinyproxy.git

2) 进入目录

cd tinyproxy
sh autogen.sh

3)编译安装

./configure --prefix=/usr/local/tinyproxy
make
make install

4)修改配置

vim /usr/local/tinyproxy/etc/tinyproxy/tinyproxy.conf

修改以下内容,其中:

Allow 是允许访问的主机IP,不写就是允许所有主机访问
Port 是代理访问端口号

# 注释掉这一行
# Allow 127.0.0.1
# 修改端口号
Port 8888

默认端口是8888,可以根据自己需要修改。

5)添加启动项

vim /etc/profile.d/tinyproxy.sh

内容:export PATH=$PATH:/usr/local/tinyproxy/bin/

6)重新加载系统环境

source /etc/profile

7)启动服务

mv /usr/local/tinyproxy/etc/tinyproxy/tinyproxy.conf /etc/
cd /etc/
tinyproxy -c /etc/tinyproxy.conf

8)测试代理

在你自己的电脑上,通过以下方式测试代理服务器是否正常启动,其中:

ip为你vps服务器的ip,port为tinyproxy.conf中配置的端口

curl -x ip:port www.baidu.com

返回以下内容,说明代理正常。

注意事项:

  • 安装过程中,可能缺失安装包,如:git、automake等。大家根据提示需要安装
  • 建议先关闭防火墙,代理可正常访问后,再开放对应端口。具体命令可搜索
systemctl status firewalld.service
firewall-cmd --zone=public --add-port=8888/tcp --permanent

2、浏览器通过代理vps访问github

我这里用的是chrome浏览器插件SwitchyOmega

3、解决效果