解決Github訪問速度慢以及圖片加載慢的問題

1 前言

衆所周知Github在國內的訪問速度一直都不怎麼樣,主要的原因是DNS解析太慢了,也就是從github.com獲取IP的過程太慢了,因此,一種最有效的辦法是直接修改本地Hosts,饒過DNS解析。

這也是本文的出發點,雖然,這樣的文章網上有很多,百度一搜出來基本上都是如下的套路:

  • 通過IP解析網站得到github.comIP/直接給出某個IP
  • 修改本地Hosts
  • 刷新緩存

當然,這樣最大的一個壞處是當IP更新的時候每次都需要去修改Hosts,非常麻煩。受到該倉庫的啓發,本文提供了一種自動修改的方法,非常方便。

本文主要分成兩個部分介紹:

  • 手動修改Hosts
  • 通過工具自動修改Hosts

首先看一下第一部分。

2 手動修改Hosts

2.1 修改Hosts

首先打開該倉庫

在這裏插入圖片描述

複製其中的內容到Hosts文件中,各大平臺Hosts文件位置如下:

  • WindowsC:\Windows\System32\drivers\etc\hosts
  • Linux/etc/hosts
  • Mac/etc/hosts
  • Android/system/etc/hosts
  • iOS/etc/hosts

根據對應平臺修改上述的文件,添加內容到Hosts末尾即可。

2.2 使Hosts生效

大部分情況下修改完Hosts文件後直接生效,如果不生效,可以嘗試手動刷新DNS緩存,具體如下:

  • Windows:打開cmd,輸入ipconfig /flushdns
  • Linuxsudo rcnscd restart
  • Macsudo killall -HUP mDNSResponder

如果不生效可以嘗試重啓機器。

3 自動方式(推薦)

上面的方式需要手動修改Hosts文件,非常麻煩,這裏推薦一種自動修改的方式。

在此之前需要一個工具:SwitchHosts

3.1 SwitchHosts安裝

官方倉庫在此處,直接到Release下載即可。

在這裏插入圖片描述

或者從軟件包倉庫安裝,以筆者的Manjaro爲例:

paru -S switchhosts-bin

3.2 配置

打開後,點擊左下角的加號按鈕,添加一個新的規則:

在這裏插入圖片描述

內容如下:

  • 標題:隨便
  • 類型:Remote
  • URLhttps://cdn.jsdelivr.net/gh/521xueweihan/GitHub520@main/hosts
  • 自動刷新時間:第一次添加可以先選擇1 minute,有了規則以後,就可以選擇1 hour

配置好後就可以看到了:

在這裏插入圖片描述

3.3 一個小問題

筆者在實測的時候發現如果直接通過啓動菜單啓動SwitchHosts,添加新的規則老是失敗:

在這裏插入圖片描述

無論輸入的是用戶的密碼還是root的密碼都不行。

於是筆者找了一下啓動命令,直接sudo啓動:

sudo switchhosts

在這裏插入圖片描述

啓動失敗,按照提示加上--no-sandbox(這是一個eletron的參數):

sudo switchhosts --no-sandbox

需要注意在啓動之前需要把原來普通模式啓動的SwitchHosts先退出了,不然會提示端口占用:

在這裏插入圖片描述

啓動之後就可以直接修改Hosts而不需要密碼了。

另外這裏有一個小細節就是兩種模式下(普通模式/sudo模式)啓動的圖標不一樣:

在這裏插入圖片描述

在這裏插入圖片描述

4 效果

配置好DNS後應該能正常訪問Github上的圖片了:

在這裏插入圖片描述

5 後記

通過上面的配置DNS方法應該就可以順利訪問Github了,此外,該倉庫還介紹了另一種自動配置DNS的方式:AdGuard Home

在這裏插入圖片描述

由於筆者沒有用過就不說這個了。最後,該倉庫還有一個TODO

在這裏插入圖片描述

希望最後一項內容儘快完成吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章