GHProxy V1.4.0
GHProxy v1.4.0 版本更新介绍
我们很高兴地宣布 GhProxy v1.4.0 的发布!这个版本带来了多个重要的改进和新功能,旨在提升性能和用户体验。以下是本次更新的详细内容:
CHANGELOG (更新日志)
- CHANGE: 优化代码结构,提升性能
- ADD: 新增auth子模块whitelist.go,支持白名单功能
- ADD: 新增whitelist.json文件,用于配置白名单
- CHANGE&ADD: 在config.yaml文件中新增白名单配置块
- FIX: 由于临时加入且未在原开发路线上计划的白名单功能,导致函数命名冲突,在此修复blacklist.go的函数命名问题
- FIX: 修复黑/白名单是否生效相关问题
主要更新内容
功能优化
- 黑名单功能优化:由于临时加入且未在原开发路线上计划的白名单功能,导致函数命名冲突,在此修复 blacklist.go 的函数命名问题,并优化相关结构
新增功能
新增白名单功能:加入白名单功能,支持配置白名单,白名单优先级高于黑名单。具体实现逻辑请参看 白名单功能
新增 auth 子模块
whitelist.go
:为了支持白名单功能,我们引入了一个新的子模块。新增
whitelist.json
文件:黑名单配置现在位于config/whitelist.json
文件中。用户可以在此文件中指定允许访问的仓库,其余仓库将被阻断。例如:
{
"whitelist": [
"test/test1",
"example/repo2",
"another/repo3"
]
}
配置文件更新
config.yaml
格式修改:为了提高可读性,我们对config.yaml
文件的格式进行了调整。用户可以更直观地进行配置管理。config.yaml
新配置格式如下:
# 核心配置
server:
port: 8080 # 监听端口(小白请勿修改)
host: "127.0.0.1" # 监听地址(小白请勿修改)
sizelimit: 131072000 # 125MB
# 日志配置
logger:
logfilepath: "/data/ghproxy/log/ghproxy.log" # 日志文件路径(小白请勿修改)
maxlogsize: 5 # MB
# CORS 配置
cors:
enabled: true # 是否开启CORS
# 鉴权配置
auth:
enabled: false # 是否开启鉴权
authtoken: "test" # 鉴权Token
# 黑名单配置
blacklist:
enabled: true # 是否开启黑名单
blacklistfile: "/data/ghproxy/config/blacklist.json"
# 白名单配置
whitelist:
enabled: false # 是否开启白名单
whitelistfile: "/data/ghproxy/config/whitelist.json"
提醒
- config.yaml相关 : 此次更新新增whitelist配置块,若需使用白名单功能,请在配置文件加入whitelist相关配置;若无需使用白名单功能,您无需修改配置文件。
项目特点回顾
GhProxy 是一个基于 Go 语言实现的工具,旨在加速特定地区对 GitHub 仓库的访问。它支持速率限制、用户鉴权,并且可以通过 Docker 部署。GhProxy 还支持自定义黑名单,符合 RFC 7234 的 HTTP 缓存标准,并使用 Caddy 作为 Web 服务器。
前端界面:
结语
我们感谢所有用户的支持与反馈,并期待 GhProxy v1.4.0 能为您的开发工作带来更大的便利和效率!若此项目对您有所帮助,请不要忘记 star 项目,您的支持是我们前进的动力!