前言
GoIndex 全称 Google Drive Directory Index,它是一款可以部署在 Cloudflare Workers 上的无服务器架构 (Serverless) Google Drive 目录索引程序,它可以将 Google Drive 文件以目录形式列出,并且可以通过直链进行下载,如果视频是 MP4 格式还可以在线观看。由于流量是通过 Cloudflare 中转,所以即使在被限制的网络环境下也能自由的使用。本篇教程讲解的是 GoIndex 使用自定义 API 部署的过程,理论上更安全且下载速度更快。
准备工作
- Google 账号
- CloudFlare 账号
- GoIndex 源码(开发者已删库,备份仓库)
打开 index.js 可以看到一些可以自由修改的参数。其中最后四项是需要我们手动去获取的参数。
"siteName": "GoIndex", // 网站名称
"root_pass": "index", // 根目录密码,优先于.password
"version" : "1.0.6", // 程序版本
"theme" : "material", // material classic
"client_id": "",
"client_secret": "",
"refresh_token": "", // 授权 token
"root": "root" // 根目录ID
获取 client_id 与 client_secret
NOTICE: 部分教育邮箱可能无法开启 API ,这是因为管理员没有开放权限,你可以使用自己的账号去创建 API 。
创建 OAuth client ID,首次创建会让你配置同意屏幕,填写应用名称后直接保存即可。
应用类型选择其他,名称随意。(迷路点这里)
然后就可以看到客户端ID(client_id)和客户端密钥(client_secret),复制并保存好。
获取 refresh_token
- 安装 Rclone
curl https://rclone.org/install.sh | bash
- 输入
rclone config
命令,会出现以下信息,参照下面的注释进行操作。
点击查看
获取根目录ID(root)
这里的根目录是指 GoIndex 显示的根目录,可以是你网盘中的任意目录。打开网盘定位到某个目录或共享目录,地址栏 URL 中最后面部分的代码就是目录 ID 了。如果是个人网盘参数留空则是网盘根目录。
创建 Workers
- 登录 Cloudflare,点击右侧的 Workers 。
- 新建一个 Workers 子域名。TIPS:后续无法更改,所以不要乱填。
点击Create a Worker
新建一个 Worker
清空输入框中的内容,把修改好的 GoIndex 代码并粘贴进去,然后可以在左上角双击修改域名,再点击Save and Deploy
即可。
最后获取到的****.workers.dev
就是你的 GoIndex 地址了,比如我的是gd.p3terx.workers.dev
。
自定义域名
- 添加一个 CNAME 记录到前面获取到的地址。
然后去 Workers 点击ADD route
输入自定义域名,需要注意的是后面要加上/*
,比如我的是gd.p3terx.com/*
,下面的 workers 选择之前创建的项目。
如果想要 http 自动跳转到 https 需要开启Always Use HTTPS
:
扩展玩法
如果你有谷歌云 VPS 可以通过 Aria2 下载并自动调用 Rclone 上传到谷歌网盘,谷歌云入站流量和谷歌自己服务的流量都是免费的,除了 BT 下载时上传会消耗一些收费流量外,其它几乎不会产生收费流量。GoIndex 在线观看或者下载到本地的数据走 Cloudflare 无需梯子,也不需要额外费用。如果你的谷歌网盘是无限盘就相当于 0 成本拥有了无限流量和无限空间的离线下载服务器和共享网盘。