1
0
mirror of synced 2024-07-05 03:15:14 +08:00
GitHub520/README.md

185 lines
7.0 KiB
Markdown
Raw Normal View History

2022-11-22 14:13:08 +08:00
# GitHub520
<p align="center">
<img src="https://cdn.jsdelivr.net/gh/521xueweihan/img_logo@main/logo/readme.gif"/>
<br><strong><a href="https://github.com/521xueweihan/HelloGitHub" target="_blank">HelloGitHub</a></strong> 分享 GitHub 上有趣、入门级的开源项目。<br>兴趣是最好的老师,这里能够帮你找到编程的兴趣!
</p>
2022-11-22 17:38:07 +08:00
服务器续费到 2024.12 共花了1500+💰 [点击扫码赞助](https://cdn.jsdelivr.net/gh/521xueweihan/img_logo@main/logo/receiving_code.png),感谢🙏
2022-11-22 14:13:08 +08:00
## 一、介绍
对 GitHub 说"爱"太难了:访问慢、图片加载不出来。
2022-11-22 17:38:07 +08:00
**本项目无需安装任何程序,仅需 5 分钟。**
2022-11-22 14:13:08 +08:00
2022-11-22 17:38:07 +08:00
通过修改本地 hosts 文件,试图解决:
2022-11-22 14:13:08 +08:00
- GitHub 访问速度慢的问题
- GitHub 项目中的图片显示不出的问题
2022-11-22 17:38:07 +08:00
让你"爱"上 GitHub。
*注:* 本项目还处于测试阶段,仅在本机测试通过,如有问题欢迎提 [issues](https://github.com/521xueweihan/GitHub520/issues/new)
2022-11-22 14:13:08 +08:00
## 二、使用方法
2022-11-22 17:38:07 +08:00
下面的地址无需访问 GitHub 即可获取到最新的 hosts 内容:
- 文件:`https://raw.hellogithub.com/hosts`
- JSON`https://raw.hellogithub.com/hosts.json`
### 2.1 手动方式
#### 2.1.1 复制下面的内容
2022-11-22 14:13:08 +08:00
```bash
# GitHub520 Host Start
2024-06-05 16:06:19 +08:00
140.82.112.25 alive.github.com
2024-06-04 18:05:19 +08:00
140.82.112.6 api.github.com
2024-06-12 10:17:40 +08:00
185.199.109.153 assets-cdn.github.com
2024-06-12 14:06:36 +08:00
185.199.108.133 avatars.githubusercontent.com
2024-06-11 22:05:10 +08:00
185.199.111.133 avatars0.githubusercontent.com
2024-06-12 12:05:51 +08:00
185.199.111.133 avatars1.githubusercontent.com
2024-06-12 06:05:11 +08:00
185.199.111.133 avatars2.githubusercontent.com
2024-06-12 10:17:40 +08:00
185.199.111.133 avatars3.githubusercontent.com
2024-06-11 16:07:13 +08:00
185.199.111.133 avatars4.githubusercontent.com
2024-06-12 14:06:36 +08:00
185.199.111.133 avatars5.githubusercontent.com
2024-06-11 00:06:07 +08:00
185.199.111.133 camo.githubusercontent.com
2024-06-06 16:06:38 +08:00
140.82.112.22 central.github.com
2024-06-12 12:05:51 +08:00
185.199.111.133 cloud.githubusercontent.com
2024-06-11 12:06:05 +08:00
140.82.113.9 codeload.github.com
2024-06-12 12:05:51 +08:00
140.82.112.21 collector.github.com
2024-06-12 14:06:36 +08:00
185.199.111.133 desktop.githubusercontent.com
2024-06-11 22:05:10 +08:00
185.199.111.133 favicons.githubusercontent.com
2024-06-06 10:16:57 +08:00
140.82.114.4 gist.github.com
2024-06-12 14:06:36 +08:00
52.216.44.89 github-cloud.s3.amazonaws.com
54.231.136.9 github-com.s3.amazonaws.com
2024-06-12 08:20:42 +08:00
52.217.162.73 github-production-release-asset-2e65be.s3.amazonaws.com
2024-06-12 06:05:11 +08:00
16.182.74.129 github-production-repository-file-5c1aeb.s3.amazonaws.com
2024-06-12 14:06:36 +08:00
54.231.236.241 github-production-user-asset-6210df.s3.amazonaws.com
2024-05-09 06:04:57 +08:00
192.0.66.2 github.blog
2024-06-02 22:05:11 +08:00
140.82.113.4 github.com
2024-06-05 14:06:34 +08:00
140.82.113.17 github.community
2024-06-12 12:05:51 +08:00
185.199.109.154 github.githubassets.com
2024-06-12 14:06:36 +08:00
151.101.193.194 github.global.ssl.fastly.net
2024-06-11 12:06:05 +08:00
185.199.109.153 github.io
2024-06-12 12:05:51 +08:00
185.199.111.133 github.map.fastly.net
2024-06-12 10:17:40 +08:00
185.199.109.153 githubstatus.com
2024-06-06 16:06:38 +08:00
140.82.112.26 live.github.com
2024-06-11 16:07:13 +08:00
185.199.111.133 media.githubusercontent.com
2024-06-12 06:05:11 +08:00
185.199.111.133 objects.githubusercontent.com
2024-02-26 04:04:59 +08:00
13.107.42.16 pipelines.actions.githubusercontent.com
2024-06-12 08:20:42 +08:00
185.199.111.133 raw.githubusercontent.com
2024-06-12 14:06:36 +08:00
185.199.111.133 user-images.githubusercontent.com
2024-06-11 22:05:10 +08:00
140.82.114.22 education.github.com
2023-03-13 09:49:09 +08:00
2024-06-12 14:06:36 +08:00
# Update time: 2024-06-12T14:06:36+08:00
2022-11-22 14:13:08 +08:00
# Update url: https://raw.hellogithub.com/hosts
# Star me: https://github.com/521xueweihan/GitHub520
# GitHub520 Host End
```
2024-06-12 14:06:36 +08:00
该内容会自动定时更新, 数据更新时间2024-06-12T14:06:36+08:00
2022-11-22 14:13:08 +08:00
2022-11-22 17:38:07 +08:00
#### 2.1.2 修改 hosts 文件
2022-11-22 14:13:08 +08:00
hosts 文件在每个系统的位置不一,详情如下:
- Windows 系统:`C:\Windows\System32\drivers\etc\hosts`
- Linux 系统:`/etc/hosts`
- Mac苹果电脑系统`/etc/hosts`
- Android安卓系统`/system/etc/hosts`
- iPhoneiOS系统`/etc/hosts`
修改方法,把第一步的内容复制到文本末尾:
1. Windows 使用记事本。
2. Linux、Mac 使用 Root 权限:`sudo vi /etc/hosts`。
3. iPhone、iPad 须越狱、Android 必须要 root。
2022-11-22 17:38:07 +08:00
#### 2.1.3 激活生效
2022-11-22 14:13:08 +08:00
大部分情况下是直接生效,如未生效可尝试下面的办法,刷新 DNS
1. Windows在 CMD 窗口输入:`ipconfig /flushdns`
2. Linux 命令:`sudo nscd restart`,如报错则须安装:`sudo apt install nscd` 或 `sudo /etc/init.d/nscd restart`
3. Mac 命令:`sudo killall -HUP mDNSResponder`
**Tips** 上述方法无效可以尝试重启机器。
2022-11-22 17:38:07 +08:00
### 2.2 自动方式SwitchHosts
2022-11-22 14:13:08 +08:00
**Tip**:推荐 [SwitchHosts](https://github.com/oldj/SwitchHosts) 工具管理 hosts
以 SwitchHosts 为例,看一下怎么使用的,配置参考下面:
2023-12-23 15:47:39 +08:00
- Hosts 类型: `Remote`
2022-11-22 14:13:08 +08:00
2023-12-23 15:47:39 +08:00
- Hosts 标题: 随意
2022-11-22 14:13:08 +08:00
- URL: `https://raw.hellogithub.com/hosts`
2023-12-23 15:47:39 +08:00
- 自动刷新: 最好选 `1 小时`
2022-11-22 14:13:08 +08:00
如图:
![](./img/switch-hosts.png)
这样每次 hosts 有更新都能及时进行更新,免去手动更新。
2022-11-22 17:38:07 +08:00
### 2.3 一行命令 (适用于类 Unix 系统)
2022-11-22 14:13:08 +08:00
2023-03-13 09:53:22 +08:00
#### GNUUbuntu/CentOS/Fedora
2023-03-13 09:49:09 +08:00
2023-07-03 02:05:24 +08:00
`sudo sh -c 'sed -i "/# GitHub520 Host Start/Q" /etc/hosts && curl https://raw.hellogithub.com/hosts >> /etc/hosts'`
2022-11-22 14:13:08 +08:00
2023-03-13 09:53:22 +08:00
#### BSD/macOS
2023-03-13 09:49:09 +08:00
`sudo sed -i "" "/# GitHub520 Host Start/,/# Github520 Host End/d" /etc/hosts && curl https://raw.hellogithub.com/hosts | sudo tee -a /etc/hosts`
2024-04-10 14:06:20 +08:00
2022-11-22 17:38:07 +08:00
将上面的命令添加到 cron可定时执行。使用前确保 GitHub520 内容在该文件最后部分。
2024-04-21 18:34:08 +08:00
#### 在 Docker 中运行,若遇到 `Device or resource busy` 错误,可使用以下命令执行
2023-07-02 23:44:37 +08:00
2023-04-23 12:48:18 +08:00
`cp /etc/hosts ~/hosts.new && sed -i "/# GitHub520 Host Start/Q" ~/hosts.new && curl https://raw.hellogithub.com/hosts >> ~/hosts.new && cp -f ~/hosts.new /etc/hosts`
2022-11-22 17:38:07 +08:00
### 2.4 AdGuard 用户(自动方式)
2022-11-22 14:13:08 +08:00
**过滤器>DNS 封锁清单>添加阻止列表>添加一个自定义列表**,配置如下:
2022-11-22 17:38:07 +08:00
- 名称:随意
2022-11-22 14:13:08 +08:00
2022-11-22 17:38:07 +08:00
- URL`https://raw.hellogithub.com/hosts`(和上面 SwitchHosts 使用的一样)
2022-11-22 14:13:08 +08:00
如图:
![](./img/AdGuard-rules.png)
2022-11-22 17:38:07 +08:00
更新间隔在 **设置 > 常规设置 > 过滤器更新间隔(设置一小时一次即可)**,记得勾选上 **使用过滤器和 Hosts 文件以拦截指定域名**
2022-11-22 14:13:08 +08:00
![](./img/AdGuard-rules2.png)
2022-11-22 17:38:07 +08:00
**Tip**:不要添加在 **DNS 允许清单** 内,只能添加在 **DNS 封锁清单** 才管用。 另外AdGuard for Mac、AdGuard for Windows、AdGuard for Android、AdGuard for IOS 等等 **AdGuard 家族软件** 添加方法均类似。
2022-11-22 14:13:08 +08:00
## 三、效果对比
之前的样子:
![](./img/old.png)
修改完 hosts 的样子:
![](./img/new.png)
## TODO
- [x] 定时自动更新 hosts 内容
- [x] hosts 内容无变动不会更新
- [x] 寻到最优 IP 解析结果
## 声明
<a rel="license" href="https://creativecommons.org/licenses/by-nc-nd/4.0/deed.zh"><img alt="知识共享许可协议" style="border-width: 0" src="https://licensebuttons.net/l/by-nc-nd/4.0/88x31.png"></a><br>本作品采用 <a rel="license" href="https://creativecommons.org/licenses/by-nc-nd/4.0/deed.zh">署名-非商业性使用-禁止演绎 4.0 国际</a> 进行许可。