Go to file
2021-01-26 17:31:13 +08:00
.gitignore feat: add project files 2021-01-03 23:25:48 +08:00
composer.json feat: add project files 2021-01-03 23:25:48 +08:00
composer.lock feat: add project files 2021-01-03 23:25:48 +08:00
favicon.ico style(favicon): add favicon 2021-01-11 19:06:57 +08:00
ghproxy.conf feat: log real ip 2021-01-12 17:48:27 +08:00
index.html docs: tip 2021-01-11 19:24:48 +08:00
index.php feat(index.php): return 302 when exceed size limit 2021-01-26 17:31:13 +08:00
LICENSE Initial commit 2021-01-03 22:15:25 +08:00
README.md docs: stop instruction 2021-01-09 15:12:14 +08:00
robots.txt docs: update example links 2021-01-08 18:05:32 +08:00

ghproxy

Github文件下载加速PHP版基于异步PHP框架 ReactPHP开发,具有高性能、支持高并发的优点。

演示站点:https://gh.2i.gs,教程文章:https://tlanyan.me/php-version-ghproxy/

本项目参考 gh-proxy其js版可运行在CloudFflare Worker上并提供了可运行在docker中的Python版。

使用教程

1. 安装PHP和composer

如系统已经安装PHP和composer可略过。

CentOS系统安装最新版PHP可参考使用Remi源安装最新版PHP 7和PHP 8Debian/Ubuntu系统可使用下面命令安装PHP

apt update
apt php-cli php-fpm php-bcmath php-gd php-mbstring \
php-mysql php-opcache php-xml php-zip php-json php-imagick

安装composer

wget https://getcomposer.org/installer
php installer --install-dir=/usr/local/bin --filename=composer
rm -rf installer

2. 安装composer依赖

下载/克隆本项目代码安装composer依赖

# 如果git未安装CentOS运行yum install -y gitUbuntu/Debian系统运行apt install -y git
git clone https://github.com/tlanyan/ghproxy
cd ghproxy
composer install
# 可选,基本没必要
composer dump-autoload -o

打开 index.php 文件,视自己情况修改如下几个配置(一般保持默认即可)

  • ADDR程序监听的IP默认是本机。如果前端不需要web服务器请改成 0.0.0.0
  • PORT: 程序监听的端口默认8080
  • JSDELIVR是否使用jsdelivr加速
  • CNPMJS是否使用cnpmjs.org加速
  • SIZE_LIMIT最大可下载文件大小默认2GB

最后将index.html放置到web目录例如移动到 /var/www/ghproxy 目录内。如果前端不使用Nginx等软件无需移动。

3. 安装Nginx可选

可以选择使用Nginx/Apache httpd/Caddy等中间件在前端接受web请求也可以让程序直接监听端口处理请求。如果采用https访问建议使用Nginx等web服务器配置SSL。

安装Nginx:

# CentOS
yum install -y nginx
systemctl enable nginx

## Debian/Ubuntu
apt install -y nginx

修改项目中的 ghproxy.conf 文件(域名、web路径、SSL配置等)然后复制到Nginx配置目录内。获取证书和配置Nginx可参考 从Lets Encrypt获取免费证书从阿里云获取免费SSL证书

4. 启动程序

进入项目文件夹,执行 nohup php index.php &,也可以在 tmux/screen 等终端窗口内执行 php index.php 启动程序。

部署了Nginx的前端web服务器的请重启web服务器。

接下来,浏览器打开网址,输入要加速下载的链接,查看加速效果。

停止程序:首先 ps aux | grep -v grep | grep index.php 找到进程号(输出的第二列)然后kill掉kill -9 进程号

使用中遇到问题欢迎反馈。

Tips

保持Github上的fork在最新版请参考使用pull app保持Fork代码在最新状态