Onedrive Directory Index
不占用服务器空间,不走服务器流量,
直接列出 OneDrive 目录,文件直链下载。
1、PHP空间,PHP 5.6+ 需打开curl支持
2、OneDrive 账号 (个人、企业版或教育版/工作或学校帐户)
3、OneIndex 程序
运行:
docker run -d --name oneindex \
-p 80:80 --restart=always \
-v ~/oneindex/config:/var/www/html/config \
-v ~/oneindex/cache:/var/www/html/cache \
-e REFRESH_TOKEN='0 * * * *' \
-e REFRESH_CACHE='*/10 * * * *' \
setzero/oneindex
变量说明:
REFRESH_TOKEN
刷新一次token的crontab表达式,默认值0 * * * *
,即每小时REFRESH_CACHE
刷新一次cache的crontab表达式,默认值*/10 * * * *
,即每10分钟
停止删除容器:
docker stop oneindex
docker rm -v oneindex
运行:
docker-compose up -d
停止删除容器:
docker-compose down
[可选]推荐配置,非必需。后台定时刷新缓存,可增加前台访问的速度。
# 每小时刷新一次token
0 * * * * /具体路径/php /程序具体路径/one.php token:refresh
# 每十分钟后台刷新一遍缓存
*/10 * * * * /具体路径/php /程序具体路径/one.php cache:refresh
README.md
、HEAD.md
、 .password
特殊文件使用
可以参考https://github.com/donwa/oneindex/tree/files
在文件夹底部添加说明:
在 OneDrive 的文件夹中添加
README.md
文件,使用 Markdown 语法。
在文件夹头部添加说明:
在 OneDrive 的文件夹中添加
HEAD.md
文件,使用 Markdown 语法。
加密文件夹:
在 OneDrive 的文件夹中添加
.password
文件,填入密码,密码不能为空。
直接输出网页:
在 OneDrive 的文件夹中添加
index.html
文件,程序会直接输出网页而不列目录。
配合 文件展示设置-直接输出 效果更佳。
仅能在PHP CLI模式下运行
清除缓存:
php one.php cache:clear
刷新缓存:
php one.php cache:refresh
刷新令牌:
php one.php token:refresh
上传文件:
php one.php upload:file 本地文件 [OneDrive文件]
上传文件夹:
php one.php upload:folder 本地文件夹 [OneDrive文件夹]
例如:
//上传demo.zip 到OneDrive 根目录
php one.php upload:file demo.zip
//上传demo.zip 到OneDrive /test/目录
php one.php upload:file demo.zip /test/
//上传demo.zip 到OneDrive /test/目录并将其命名为 d.zip
php one.php upload:file demo.zip /test/d.zip
//上传up/ 到OneDrive /test/ 目录
php one.php upload:file up/ /test/