2037-GitHub Host

使用 Cloudflare Workers 和公共 DNS API 加速访问 GitHub

📝 项目介绍

GitHub 访问加速,解决 GitHub 访问慢的问题。使用 Cloudflare Workers 和公共 DNS API 来获取 IP 地址。

NoKV 版本:已移除 Cloudflare KV 存储,每次请求实时 DNS 查询,无需 KV 配额,永不下线。

原作者:TinsFox/github-hosts | NoKV 版:git clone -b nokv https://github.com/aspnmy/github-hosts.git

感谢 GitHub520 提供的灵感。

🚀 特点

💻 使用方法

1. 命令行工具(推荐)

MacOS 用户

sudo curl -fsSL https://github.com/aspnmy/github-hosts/releases/tag/v0.0.0.1_nokv/github-hosts.darwin-arm64 -o github-hosts && sudo chmod +x ./github-hosts && ./github-hosts

⚠️ Windows 与 Linux 的脚本还没有经过测试,遇到问题请提 issue

Windows 用户

在管理员权限的 PowerShell 中执行:

irm https://github.com/aspnmy/github-hosts/releases/tag/v0.0.0.1_nokv/github-hosts.windows-amd64.exe | iex

Linux 用户

sudo curl -fsSL https://github.com/aspnmy/github-hosts/releases/tag/v0.0.0.1_nokv/github-hosts.linux-amd64 -o github-hosts && sudo chmod +x ./github-hosts && ./github-hosts

更多版本请查看 Release 页面

2. 使用 SwitchHosts 工具

  1. 下载并安装 SwitchHosts
  2. 添加规则:

当前 hosts 内容

正在加载 hosts 内容...

3. 手动更新

  1. 获取 hosts:访问 https://hosts.earth-online.org/hosts
  2. 更新本地 hosts 文件:
  3. 刷新 DNS:

远程域名配置

域名列表由仓库中的 domains.txt 管理。推荐使用以下 raw GitHub 地址作为运行时来源:

https://raw.githubusercontent.com/aspnmy/github-hosts/nokv/domains.txt

更新域名只需修改该文件并推送到 nokv 分支。Worker 会根据 wrangler.toml 中的 DOMAINS_URL 拉取该文件并缓存(默认 5 分钟)。如需立即生效,请在推送后触发部署。

使用我维护的公共部署

如果你不想维护自己的 Cloudflare 部署,可以 fork 本项目的 nokv 分支,编辑并提交 `domains.txt`,然后将修改推送到我仓库的 nokv 分支。推送后,我在 Cloudflare 上的 Worker 将会读取该文件并解析你维护的域名列表。

注意:请确保你维护的域名不在黑名单中(不要包含恶意或受限域名),否则可能影响服务或触发安全策略。

❓ 常见问题

权限问题

定时任务未生效

更新失败

🔧 API 接口文档

接口 方法 描述
/hosts GET 获取 hosts 文件内容
/hosts.json GET 获取 JSON 格式的数据
/{domain} GET 获取指定域名的实时 DNS 解析结果
/reset POST 清空缓存并重新获取所有数据(需要 API Key)

📦 源码

本项目是 NoKV 版本,已移除 Cloudflare KV 存储。

原作者:TinsFox/github-hosts

NoKV 版克隆:git clone -b nokv https://github.com/aspnmy/github-hosts.git