跳到主要内容

解决 GitHub 国内访问问题

声明#

方法来源于: GitHub520

一、介绍#

对 GitHub 说"爱"太难了:访问慢、图片加载不出来。

本项目无需安装任何程序,仅需 5 分钟。

通过修改本地 hosts 文件,试图解决:

  • GitHub 访问速度慢的问题
  • GitHub 项目中的图片显示不出的问题

让你"爱"上 GitHub。

注: 本项目还处于测试阶段,仅在本机测试通过,如有问题欢迎提 issues

二、使用方法#

下面的地址无需访问 GitHub 即可获取到最新的 hosts 内容:

  • 文件:https://raw.hellogithub.com/hosts
  • JSON:https://raw.hellogithub.com/hosts.json

2.1 手动方式#

2.1.1 复制下面的内容#

# GitHub520 Host Start140.82.114.25                 alive.github.com140.82.112.6                  api.github.com185.199.110.153               assets-cdn.github.com185.199.111.133               avatars.githubusercontent.com185.199.108.133               avatars0.githubusercontent.com185.199.108.133               avatars1.githubusercontent.com185.199.108.133               avatars2.githubusercontent.com185.199.108.133               avatars3.githubusercontent.com185.199.108.133               avatars4.githubusercontent.com185.199.108.133               avatars5.githubusercontent.com185.199.108.133               camo.githubusercontent.com140.82.113.21                 central.github.com185.199.108.133               cloud.githubusercontent.com140.82.113.10                 codeload.github.com140.82.113.22                 collector.github.com185.199.108.133               desktop.githubusercontent.com185.199.108.133               favicons.githubusercontent.com140.82.114.4                  gist.github.com52.217.65.188                 github-cloud.s3.amazonaws.com52.217.230.97                 github-com.s3.amazonaws.com52.217.67.92                  github-production-release-asset-2e65be.s3.amazonaws.com54.231.162.177                github-production-repository-file-5c1aeb.s3.amazonaws.com54.231.170.177                github-production-user-asset-6210df.s3.amazonaws.com192.0.66.2                    github.blog140.82.112.18                 github.community185.199.108.154               github.githubassets.com151.101.129.194               github.global.ssl.fastly.net185.199.110.153               github.io185.199.108.133               github.map.fastly.net185.199.110.153               githubstatus.com140.82.114.26                 live.github.com185.199.108.133               media.githubusercontent.com185.199.108.133               objects.githubusercontent.com13.107.43.16                  pipelines.actions.githubusercontent.com185.199.108.133               raw.githubusercontent.com185.199.108.133               user-images.githubusercontent.com13.107.246.51                 vscode.dev

# Update time: 2022-11-24T22:05:05+08:00# Update url: https://raw.hellogithub.com/hosts# Star me: https://github.com/521xueweihan/GitHub520# GitHub520 Host End

该内容会自动定时更新, 数据更新时间:2022-11-24T22:05:05+08:00

2.1.2 修改 hosts 文件#

hosts 文件在每个系统的位置不一,详情如下:

  • Windows 系统:C:\Windows\System32\drivers\etc\hosts
  • Linux 系统:/etc/hosts
  • Mac(苹果电脑)系统:/etc/hosts
  • Android(安卓)系统:/system/etc/hosts
  • iPhone(iOS)系统:/etc/hosts

修改方法,把第一步的内容复制到文本末尾:

  1. Windows 使用记事本。
  2. Linux、Mac 使用 Root 权限:sudo vi /etc/hosts
  3. iPhone、iPad 须越狱、Android 必须要 root。

2.1.3 激活生效#

大部分情况下是直接生效,如未生效可尝试下面的办法,刷新 DNS:

  1. Windows:在 CMD 窗口输入:ipconfig /flushdns

  2. Linux 命令:sudo nscd restart,如报错则须安装:sudo apt install nscdsudo /etc/init.d/nscd restart

  3. Mac 命令:sudo killall -HUP mDNSResponder

Tips: 上述方法无效可以尝试重启机器。

2.2 自动方式(SwitchHosts)#

Tip:推荐 SwitchHosts 工具管理 hosts

以 SwitchHosts 为例,看一下怎么使用的,配置参考下面:

  • Title: 随意

  • Type: Remote

  • URL: https://raw.hellogithub.com/hosts

  • Auto Refresh: 最好选 1 hour

如图:

这样每次 hosts 有更新都能及时进行更新,免去手动更新。

2.3 一行命令 (适用于类 Unix 系统)#

sed -i "/# GitHub520 Host Start/Q" /etc/hosts && curl https://raw.hellogithub.com/hosts >> /etc/hosts

将上面的命令添加到 cron,可定时执行。使用前确保 GitHub520 内容在该文件最后部分。

2.4 AdGuard 用户(自动方式)#

过滤器>DNS 封锁清单>添加阻止列表>添加一个自定义列表,配置如下:

  • 名称:随意

  • URL:https://raw.hellogithub.com/hosts(和上面 SwitchHosts 使用的一样)

如图:

更新间隔在 设置 > 常规设置 > 过滤器更新间隔(设置一小时一次即可),记得勾选上 使用过滤器和 Hosts 文件以拦截指定域名

Tip:不要添加在 DNS 允许清单 内,只能添加在 DNS 封锁清单 才管用。 另外,AdGuard for Mac、AdGuard for Windows、AdGuard for Android、AdGuard for IOS 等等 AdGuard 家族软件 添加方法均类似。

三、效果对比#

之前的样子:

修改完 hosts 的样子: