还在使用龟速一般的 git clone
? 某些文件国内无法访问?部分网站下载速度极慢?
试试最新的代下载文件服务吧,服务地址:https://pd.zwc365.com
特点
理论上支持所有基于 http 协议的链接加速,包括 websocket (本站节点支持,cloudflare 节点暂不支持 websocket)
支持下载文件、支持 git bash
终端直接 git clone
项目
使用方式就是在现有的链接前,额外增加本站的代下线路:
# 本站代下 加速线路:
https://pd.zwc365.com/
# cloudflare 加速线路:
https://pd.zwc365.com/cfworker/
负载均衡
本站服务器有多个线路,对于每个加速请求,会根据后端服务器设定的权重,随机的负载均衡到一个线路上。
负载均衡节点可以很快速方便的添加。部署方式也极其简单。具体可以看后面的部署章节
命令行下载使用方式
在实际使用加速服务的过程中,可能需要在终端下载或者克隆一个项目
代下服务进行了命令行兼容,通过命令行代下,仅需要在下载链接的前面添加本站代下 url 前缀即可
如果要在 ubuntu
的终端命令下载文件,或者是在 git bash
窗口直接 clone
项目,可以使用命令行加速
示例:
# 当原来需要下载一个文件时:
wget https://github.com/zwc456baby/file-proxy/archive/master.zip
# 使用网站的 CloudFlare 代下功能
wget https://pd.zwc365.com/cfworker/https://github.com/zwc456baby/file-proxy/archive/master.zip
# 使用本站服务器代下功能
wget https://pd.zwc365.com/https://github.com/zwc456baby/file-proxy/archive/master.zip
命令行 Clone 项目
本服务不仅支持 Clone,对 git 仓库,完美支持 Pull 、Push 等操作。使用 git clone
项目 也是一样的操作步骤。只是 git bash 终端如果报错,提示不支持网站重定向,可能需要多一步设置(如果clone报错,务必设置):
2020/12/19 更新:经过测试,对 git pull 的支持没有任何问题。但遇到 git push ,也就是提交代码指令:如果代码量非常大,会导致无法 push ,此问题的原因暂未找到。
git config --global http.followRedirects true
关于 Github 项目的链接,请使用此处的 https 链接:
示例(目前仅支持 https
开头的项目地址):
# 原来的 clone 方式
git clone https://github.com/zwc456baby/file-proxy.git
# 加速链接使用方式:
git clone https://pd.zwc365.com/<填写原有的https项目链接>
# 例如:
git clone https://pd.zwc365.com/https://github.com/zwc456baby/file-proxy.git
如果使用 CloudFlare 代下,添加的链接前缀是:
https://pd.zwc365.com/cfworker/
如果项目之前已经 clone 过,又想使用加速功能,则可以通过此配置加速:
git remote set-url origin https://pd.zwc365.com/<这里填写原有的项目链接>
另一种用法是设定一个全局参数(一般建议在链接前加上本站加速前缀即可,如果项目非常多,则推荐设定全局参数),如果设定这个全局参数,则所有的 git clone 请求都会被本站代理:
设定全局参数后,克隆时就不需要再添加本站加速前缀了。直接 git clone <项目地址>
# 设定这个 global 参数(将下面这行复制并粘贴执行,不要随意修改)
git config --global url."https://pd.zwc365.com/https://github.com/".insteadOf https://github.com/
# 设定参数后,直接这样 clone 即可
git clone https://github.com/zwc456baby/file-proxy.git
如果要 pull 非常多的项目时,推荐使用 config 设置,这样不需要每一个项目单独设定加速链接
其它使用方式
前面说过,理论上支持所有 http 协议的链接,所以本服务可用的地方很多
这里给出的示例是,加速 Android 依赖仓库(在项目根目录的 build.gradle 中配置):
allprojects {
repositories {
maven { url 'https://pd.zwc365.com/cfworker/https://dl.google.com/dl/android/maven2/' }
maven { url 'https://pd.zwc365.com/cfworker/https://jcenter.bintray.com' }
// google()
// jcenter()
}
}
上面的加速依赖仓库的示例,经过测试是可行的。本站代下线路则是使用
/
既然能加速 Android 依赖仓库,那么 pip 依赖库、nodejs 的依赖库,理论上也都是支持的
加速获取 Android 源码:
# 原有的获取源码的方式
repo init -u https://android.googlesource.com/platform/manifest
# 加速链接获取源码的方式
repo init -u https://pd.zwc365.com/cfworker/https://android.googlesource.com/platform/manifest
上面的 /cfworker/
改成 /
也是可以的
也可以用于 Linux 的 apt 镜像:linux apt 镜像加速,加快获取 Linux 软件包
如何选择下载方式?
CloudFlare 代下无速度及大小限制,推荐使用。但是国内晚上9点左右上网高峰期,可能网络不佳。本站代下
有大小限制,这是基于服务器带宽消耗考虑的
如果遇到访问情况不佳,再尝试切换两种下载方式。由于国内有三大运营商。请根据实际情况选择加速方式
无法下载?
如果点击下载后,出现:网站无法连接。或者页面上显示一个报错信息
一般是因为该资源无法直接下载,例如:gitee.com
上的所有资源文件都需要登录账号才能下载。而且本站服务带有一个黑名单列表,位于列表中的域名无法访问
特别强调:后面拼接的链接必须是 http 或者 https 开头的 ,例如:https://pd.zwc365.com/cfworker/http://www.baidu.com
下载出现503错误码? :代下载服务设定了请求策略,如果正常访问,是不可能看到503错误码的,除非和你同一个 ip 地址的用户正在攻击本站或使用工具快速请求本站
出现502错误码? :如果被下载的资源无法访问,本站会出现 502 错误码
403 状态码提示:任务请求次数过多? :默认情况下。本站一个任务支持 15 个请求。也就是说多线程同时下载最多支持 15 个线程。Chrome 开启多线程下载的话,也只有 3 个。迅雷、Aria2 等软件多线程下载默认是 5 个线程。所以设置为 15 个线程已经足够多,如果超过,则服务器会认为遭受攻击,禁止此任务请求
404 状态码提示:任务未找到或已过期 :一个任务在提交到服务器后,只会保存 10 分钟,超过十分钟后临时生成的下载链接会失效。
如何部署下载节点
部署 CloudFlare 节点
如果你没有一台自己的服务器,那么可以使用 CloudFlare 部署一个免费的服务
- 注册 Cloudflare 账号
访问 Cloudflare 官网 ,然后点击右上角的 Sign Up
注册账号。
如果你已经有一个账号了。查看第二步
- 登录 Cloudflare 账号
点击官网的 Log In
按钮,输入账号密码登录
- 点击创建 Workers
登录完成后,点击 Workers ,然后点击
创建 workers
- 将脚本内容复制粘贴到脚本框中,并修改 workers 路径
在 workers 页面,你需要将以下链接的文本内容完整的复制,并粘贴到网页的输入框中:
- 提供部署的链接
至此已经部署完成了。
将第四步中输入框右侧 https
开头的链接,复制粘贴到本页的留言板,然后点击留言即可
使用自己的服务器部署节点
如果对服务器操作不够熟练,那么建议使用 Cloudflare 部署的方式
由于本服务支持负载均衡,所以部署的下载节点越多,那么下载速度和效果就会越好。所以推荐有闲置服务器的可以部署下载节点
添加子节点非常简单,只要你的服务器有一个 web 应用即可,下面是使用 Nginx 作为子节点部署的配置文件,如果你连 Nginx 都没有安装,那么需要先安装 Nginx:
debian、Ubuntu 安装 Nginx
sudo apt update
sudo apt install nginx
CentOs 安装 Nginx
sudo yum update
sudo yum install Nginx
在安装完成后,路径 /etc/nginx/conf.d
目录下是所有的server配置文件,在里面新建一个 proxydownload.conf
,然后文件内容如下:
配置文件很长,而且已经托管在 github 项目中: 请点击这里查看和复制配置
整个配置文件中,需要修改的位置只有几项: server_name
和 ssl证书
如果你连域名都没有,那么直接填写 ip 也可以。注意,如果你部署的网站没有 https ,可以删掉关于 https 那五行配置
你需要自行申请 https 证书后才能将下载节点升级为 https。否则请使用 Cloudflare 部署方式
然后使用 nginx -s reload
重载配置即可
如果你会修改 Nginx 配置,部分地方也是可以修改的,可以设置请求限制策略,也可以设置服务器权重。主节点会根据权重自动分发任务
当子节点部署完成后,可以留言,然后需要我手动加入到主节点的配置文件中。
快来贡献你的闲置服务器吧
作为下载服务器,带宽最好大于 10M 。且位于海外,例如香港或新加坡
Other
CloudFlare 代下
基于 原版项目地址 修改。在其基础上,实现功能。
CloudFlare 代下没有文件大小限制 ,本站代下 大小限制 2G,请求频率也有限制。这个限制可能会有所调整
2021-08-22 更新: 支持跨域,现在可以嵌入到第三方网站的内部网页中,依旧能够正常代理资源
2021-06-19 更新: 同一个用户重复访问只会返回同一个代理链接,通过 ip 进行区分(优化加载速度以及某些网站的 ip 限制)
2021-05-29 更新: 现在支持不使用 /seturl/ 前缀即可
2021-02-02 更新:现在使用两个子站点方式代替加速链接:
https://seturl.zwc365.com/
和 https://cfworker.zwc365.com/
本次更新使用方式没有任何变化。仅仅是在命令行模式下,少敲几个字母
2021/01/15 更新: 增加使用统计,从今天开始
2020/12/22 更新:服务器新增 url 限制(简单的防止恶意请求),对于同一个链接,限制时间内只可以使用指定次数,超出次数不可以使用服务器节点。会重定向到 cfworker 节点,不会造成服务中断。(对于正常用户没有任何影响,可以放心使用)
2020/11/26 更新:服务器新增节点和流量监测。节点不可用或者 VPS 流量即将耗尽,将会由脚本自动切换到 CF Workers 节点。如果使用的 /seturl/
服务器节点却被定向到 /cfworker/
节点。那么便是前述原因。(脚本原则是尽量保证可用性,避免宕机。切换全自动完成,用户使用时不需要任何更改)
2020/11/19 更新:服务器线路一般是阿里云香港线路。晚高峰(8:30 到 10:30)时间段,会由脚本自动切换线路到美国 VPS。虽然物理距离更远,但线路质量理论上是更好的。由于美国这台服务器可用流量没有阿里云香港流量实惠,所以只在晚高峰开启
捐赠
如果你有一台闲置服务器,那么可以部署 Nginx 配置,当部署完成后,在下方留言。即可加入服务下载节点
如果没有服务器,那么只需要注册一个 CloudFlare 账号,然后将 github 上的 index.js
部署到 Cloudflare Workers
中。完成后,留言即可加入 Cloudflare 线路下载节点。
如果本项目有帮到你,可以请作者喝杯咖啡。收到的捐赠会开设更多服务节点,使功能更强大。