说明
1.1.0版本支持阿里Teambition网盘的webdav协议
2.x版本仅支持阿里云盘, 不再维护Teambition网盘版本
3.x版本支持阿里云盘OpenApi
3.4.0及以上版本默认支持直连模式下载
目录
本项目实现了阿里云盘的webdav协议, 只需要简单的配置一下, 就可以让阿里云盘变身为webdav协议的文件服务器。 基于此, 你可以把阿里云盘挂载为Windows、Linux、Mac系统的磁盘, 可以通过NAS系统做文件管理或文件同步, 更多玩法等你挖掘
- Windows
aliyundrive-webdav-windows-amd64.exe
- Linux(X64)
./aliyundrive-webdav-linux-amd64
- Linux(ARM64)
./aliyundrive-webdav-linux-arm64
- macOS(Intel)
./aliyundrive-webdav-darwin-x86_64
- WebApi
./aliyundrive-webdav-darwin-x86_64 --aliyundrive.driver=WebApi
建议自己下载源码编译, 以获得最新代码
java -jar webdav.jar
mkdir $(pwd)/conf
docker run -d \
--name=aliyundrive-webdav \
--restart=always -p 8080:8080 \
-v /etc/localtime:/etc/localtime \
-v $(pwd)/conf:/conf \
-e TZ="Asia/Shanghai" \
-e ALIYUNDRIVE_DRIVER=OpenApi \
-e ALIYUNDRIVE_DOWNLOAD_PROXY_MODE=Auto \
-e ALIYUNDRIVE_REFRESH_TOKEN="your refreshToken" \
-e ALIYUNDRIVE_AUTH_PASSWORD="admin" \
eritpchy/aliyundrive-webdav
# /conf 挂载卷自动维护了最新的refreshToken, 建议挂载
# ALIYUNDRIVE_AUTH_PASSWORD 是admin账户的密码, 建议修改
version: "3.0"
services:
aliyundrive-webdav:
image: eritpchy/aliyundrive-webdav
container_name: aliyundriver
environment:
- TZ=Asia/Shanghai
- ALIYUNDRIVE_DRIVER=OpenApi
- ALIYUNDRIVE_DOWNLOAD_PROXY_MODE=Auto
- ALIYUNDRIVE_REFRESH_TOKEN=refreshToken
- ALIYUNDRIVE_AUTH_USER_NAME=admin
- ALIYUNDRIVE_AUTH_PASSWORD=admin
volumes:
- ./docker/conf:/conf
ports:
- 6666:8080
restart: always
# “refreshToken”请根据下文说明自行获取。
# “ALIYUNDRIVE_AUTH_USER-NAME”和“ALIYUNDRIVE_AUTH_PASSWORD”为连接用户名和密码, 建议更改。
# “./docker/conf/:/conf”, 可以把冒号前改为指定目录, 比如“/homes/USER/docker/alidriver/:/conf”。
# 删除了“/etc/localtime:/etc/localtime”, 如有需要同步时间请自行添加在environment下。
# 端口6666可自行按需更改, 此端口为WebDAV连接端口,8080为容器内配置端口, 修改请量力而为。
# 建议不要保留这些中文注释, 以防报错, 比如QNAP。
参考根目录内中的k8s_app.yaml, 需要文件中修改container的环境变量值。
use this to deploy in truenas scale
sudo k3s kubectl apply -f k8s_app.yaml
or other k8s cluster
sudo kubectl apply -f k8s_app.yaml
--aliyundrive.refresh-token
阿里云盘的refreshToken, 获取方式见下文
--server.port
非必填, 服务器端口号, 默认为8080
--aliyundrive.auth.enable=true
是否开启Webdav账户验证, 默认开启
--aliyundrive.auth.user-name=admin
Webdav账户, 默认admin
--aliyundrive.auth.password=admin
Webdav密码, 默认admin
--aliyundrive.work-dir=./conf
token挂载路径, 如果在同一个路径多开, 需修改此配置
--aliyundrive.driver=OpenApi
驱动引擎, 默认官方OpenApi, 可选WebApi
--aliyundrive.download-proxy-mode=Auto
文件下载模式, 默认Auto, 自动模式, 默认直连模式, 客户端不支持直连模式时使用代理模式
可选Direct, 强制直连模式, 使用此模式, 一些客户端不兼容, 将会直接报错400,302,403等错误, 详见 '客户端兼容性'
可选Proxy, 代理模式, 文件下载由程序中转, 3.3.0以前版本默认模式, 如遇问题或报上述错误可尝试使用Proxy模式
//依赖
compileOnly "org.projectlombok:lombok:1.18.26"
annotationProcessor "org.projectlombok:lombok"
implementation "com.squareup.okhttp3:okhttp:3.12.13" //api19
implementation "com.squareup.okhttp3:logging-interceptor:3.12.13" //api19
implementation "com.google.code.gson:gson:2.8.9"
//主要
implementation "net.xdow:aliyundrive-sdk-openapi:1.3.2"
implementation "net.xdow:aliyundrive-sdk-webapi:1.3.2"
//可选
implementation "net.xdow:webdav:1.3.2"
implementation "net.xdow:webdav-jakarta:1.3.2"
implementation "net.xdow:webdav-javax:1.3.2"
implementation "net.xdow:aliyundrive-webdav-internal:1.3.2"
implementation "net.xdow:aliyundrive-android-core:1.3.2"
implementation "net.xdow:jap-http:1.3.2"
implementation "net.xdow:jap-http-jakarta-adapter:1.3.2"
implementation "net.xdow:jap-http-javax-adapter:1.3.2"
AliyunDrive.newAliyunDrive()
群号(已满):789738128
二群群号(已满):979024890
三群群号(已满):212673498
四群群号(已满):752067171
五群群号:703607910
客户端 | 下载 | 上传 | 备注 |
---|---|---|---|
群辉Cloud Sync | 代理模式 | ✅ | 建议使用单向同步 |
Rclone | 🚀直连模式 | ✅ | 推荐, 支持各个系统, 直连模式需要添加参数, 见下方配置说明 |
Mac原生 | 🚀直连模式 | ✅ | |
Transmit | 🚀直连模式 | ✅ | |
Windows原生 | 🚀直连模式 | ✅ | 有4GB文件传输限制,首次使用还需配置http, 见下方'注意事项' |
RaiDrive | 🚀直连模式 | ✅ | Windows平台下建议用这个 |
WinSCP 6.1.1+ | 🚀直连模式 | ✅ | 6.1.1以下版本不支持直连模式 |
Fileball | 🚀直连模式 | ✅ | iOS推荐 |
nPlayer | 🚀直连模式 | ✅ | |
MT管理器 | 🚀直连模式 | ✅ | 推荐 |
ES文件浏览器 | 🚀直连模式 | ✅ | |
Kodi 20.0+ | 🚀直连模式 | ✅ | 2023年后编译版本可用直连模式 |
注: 所有客户端均默认支持代理模式
- Rclone 1.62.2及以下版本应选择Vendor为Nextcloud以支持rclone自身的数据校验功能
- Rclone 1.63.0及以上版本(目前为beta版本, 点击前往下载beta版) 请选择Vendor为Fastmail Files, 如选择Vendor为Nextcloud, 则advanced config中nextcloud_chunk_size应设置为0, 否则使用时报错
- Vendor 选择为Other无数据校验功能
- Vendor 选择为Owncloud, 因Rclone本身只校验md5无数据校验功能
- 直连模式需要在Rclone 命令行参数添加 --header="Referer:", 否则报错403
例如: R:\rclone1.63.0.exe --header="Referer:" copy test:/demo/demo.mkv R:/test
方式1
1. 先通过浏览器(建议chrome)打开阿里云盘官网并登录:https://www.aliyundrive.com/drive/ 2. 登录成功后, 按F12打开开发者工具, 点击Application, 点击Local Storage, 点击 Local Storage下的 [https://www.aliyundrive.com/](https://www.aliyundrive.com/), 点击右边的token, 此时可以看到里面的数据, 其中就有refresh_token, 把其值复制出来即可。(格式为小写字母和数字, 不要复制双引号。例子:ca6bf2175d73as2188efg81f87e55f11) 3. 第二步有点繁琐, 大家结合下面的截图就看懂了 ![image](https://user-images.githubusercontent.com/32785355/119246278-e6760880-bbb2-11eb-877c-aca16cf75d89.png)方式2
- 先通过浏览器(建议chrome)打开阿里云盘官网并登录:https://www.aliyundrive.com/drive/
- 登录成功后, 在地址栏输入 javascript:
- 粘贴下列代码到javascript: 后面,然后按回车键
弹窗
var p=document.createElement('p');p.style='text-align:center;margin-top:30px';p.innerHTML='refresh_token: <span style="color:red;">'+JSON.parse(localStorage.getItem('token')).refresh_token+'</span>';var win=window.open('','_blank','width=800,height=100');win.document.body.appendChild(p);
同时, 也可以将上述代码组合为
javascript:var p=document.createElement('p');p.style='text-align:center;margin-top:30px';p.innerHTML='refresh_token: <span style="color:red;">'+JSON.parse(localStorage.getItem('token')).refresh_token+'</span>';var win=window.open('','_blank','width=800,height=100');win.document.body.appendChild(p);
添加为浏览器书签, 在https://www.aliyundrive.com/drive/ 页面点击该书签也会弹出refresh_token弹窗
- 查看文件夹、查看文件
- 文件移动目录
- 文件重命名
- 文件下载
- 文件删除
- 文件上传(支持大文件自动分批上传)
- 支持超大文件上传(官方限制30G)
- 支持Webdav权限校验(默认账户密码:admin/admin)
- 文件下载断点续传
- Webdav下的流媒体播放等功能
- 支持文件名包含
/
字符 - 数据校验
- 移动文件到其他目录的同时, 修改文件名。比如 /a.zip 移动到 /b/a1.zip, 是不支持的
- 文件上传断点续传
- 部分客户端兼容性不好
- 由于http协议在公网上明文传输密码, 部署在公网切记要开https, 否则不安全, 用宝塔反代即可
5. Windows提示无法访问
注册表: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters BasicAuthLevel 改为2, 改完重启计算机或WebClient服务
6. Windows提示文件大小超过允许的限制,无法保存
注册表: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters FileSizeLimitInBytes 改为FFFFFFFF, 也就是最大4GB限制, 改完重启计算机或WebClient服务 其他教程: 文件大小超过允许的限制,无法保存
- 本软件为免费开源项目, 无任何形式的盈利行为。
- 本软件服务于阿里云盘, 旨在让阿里云盘功能更强大。如有侵权, 请与我联系, 会及时处理。
- 本软件皆调用官方接口实现, 无任何“Hack”行为, 无破坏官方接口行为。
- 本软件仅做流量转发, 不拦截、存储、篡改任何用户数据。
- 严禁使用本软件进行盈利、损坏官方、散落任何违法信息等行为。
- 本软件不作任何稳定性的承诺, 如因使用本软件导致的文件丢失、文件破坏等意外情况, 均与本软件无关。