最近一直在折腾跨设备文件共享,试了一圈工具之后,发现 rclone + WebDAV 的组合确实是目前最省心的方案。简单来说,就是把你服务器、NAS 或者某些网盘上开了 WebDAV 服务的文件目录,通过 rclone 挂载成你电脑里的一个盘符(比如 Windows 的 Z 盘)或者一个本地目录(Linux 下的 /mnt/webdav),之后所有程序读取这个盘符的路径时,rclone 会在底层自动把请求转发给远程 WebDAV 服务,你完全感觉不到文件其实在千里之外。这篇文章就是我的完整踩坑记录和实操笔记,包含从协议原理、配置参数到开机自启、问题排查的完整过程,适合有 NAS、云服务器或虚拟主机,想把远程文件空间当本地磁盘用的朋友参考。
1. 方案选型:为什么我把目光锁定在 rclone 上
1.1 一上来就撞见的几个“伪需求”陷阱
很多人拿到“把远程 WebDAV 映射成本地硬盘”这个需求后,第一反应是打开 Windows 的资源管理器,右键“映射网络驱动器”,直接填上 WebDAV 地址。我一开始也是这么干的,结果踩了一堆坑。
Windows 自带的 WebDAV 客户端支持 HTTP 和 HTTPS 两种协议,但它的兼容性相当挑服务端。如果你连的是一个不太标准的 WebDAV 服务(比如某些私有网盘、老旧 NAS 系统甚至 Tomcat 里的 WebDAV 工程),Windows 常常会在“正在连接到网络驱动器”这一步卡半天,最后给你报一个 0x80070043 之类的错误。就算连上了,你会发现大文件传输慢到怀疑人生,而且一旦网络抖动,资源管理器就整个卡死,复制到一半的文件直接断掉,目录刷新还经常出现“该文件夹为空”的假象。
后来我改用了一些专门的 WebDAV 挂载工具,像 RaiDrive、NetDrive 之类。这类工具确实解决了资源管理器兼容问题,但免费版限制多,收费也不便宜,而且界面图形化的东西放到服务器上用就很别扭——我需要在 Linux 服务器上无桌面环境的情况下自动挂载,图形客户端根本没戏。
1.2 rclone 到底有什么不可替代的优势
rclone 本身就是个命令行工具,最初的设计目标是用来在各种云存储之间同步文件,但它内置了一个极其强大的 mount 命令,可以把几乎所有支持的后端(包括 WebDAV)挂载成操作系统里的一个虚拟文件系统。我用过一段时间后,发现它在这个场景下有四个别人替代不了的好处:
- 跨平台:Windows、Linux、macOS 甚至 FreeBSD 都能跑,配置文件可以原样复制到另一台机器,迁移成本几乎为零。
- 协议兼容性好:rclone 的 WebDAV 后端不是简单照搬标准协议,它内部对很多非标准实现做了适配,比如有的服务端不支持 PROPFIND 返回完整目录、有的不支持部分锁定操作,rclone 都能绕过去。
- 支持 VFS 缓存层:普通的网络驱动器每次打开文件都要实时到远程读取,rclone 可以在本地留缓存,读写速度和稳定性都提升一个量级。
- 脚本化部署:全部命令可控,一条命令就能完成挂载,配合 systemd、Windows 计划任务可以做到开机自启,全程无人值守。
我的最终架构就是:NAS 端开启 WebDAV 服务,本地 Windows 笔记本上安装 rclone 并把远程 WebDAV 目录挂载为 Z 盘,同时 Linux 服务器上再做一份挂载,统一读写同一个文件池。整个配置加起来不到一百行,比任何图形工具都轻量。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心概念:WebDAV 协议和 rclone 的虚拟文件系统
2.1 WebDAV 到底是个什么东西
很多教程上来就让你填地址、账号、密码,根本不说原理,导致出了问题也不知道从哪排查。我先花点篇幅把 WebDAV 这层窗户纸捅破。
WebDAV 的全称是 Web Distributed Authoring and Versioning,直译过来是“基于 Web 的分布式创作和版本管理协议”。它本质上是 HTTP 协议的一组扩展,通过新增几个 HTTP 方法(比如 PROPFIND、PROPPATCH、MKCOL、COPY、MOVE、LOCK、UNLOCK),让客户端可以通过普通的 Web 服务器来管理文件。
用最简单的方式理解:普通 HTTP 只能“下载”和“上传”文件,WebDAV 额外允许你“列目录”“创建文件夹”“复制移动文件”“给文件加锁”。为什么它能实现远程文件管理?因为所有操作都基于 HTTP 请求,只要 80 或 443 端口通着,WebDAV 就能工作,不需要额外开 FTP、SMB 这类端口。
这里有个我踩过的认知误区:很多人觉得 WebDAV 不安全,因为它和 HTTP 共用端口。其实 WebDAV 完全可以跑在 HTTPS 上,数据加密强度和普通 HTTPS 网站完全一样,只要你的服务端配置了有效证书,传输过程不会有明文泄露的问题。
2.2 rclone 的 mount 底层:VFS 缓存层
rclone mount 的核心是一个叫 VFS(Virtual File System)的虚拟文件系统层。它做的事情可以概括成三句话:
- 应用程序通过操作系统文件接口(比如 Windows 的 ReadFile、Linux 的 read)发起文件访问请求。
- rclone 的 VFS 层拦截这个请求,判断要读的数据块是否已经在本地缓存里。
- 如果在缓存里就直接返回,如果不在就向远程 WebDAV 服务端发起 HTTP 请求拉取数据。
这个缓存机制非常关键。你可以想象成家里冰箱和超市的关系:VFS 缓存就是冰箱,远程 WebDAV 就是超市。你每次想喝可乐不会专门跑一趟超市(远程请求),而是先看冰箱里有没有(本地缓存),有就直接拿(命中),没有才出门买(回源)。
VFS 缓存有几个核心参数值得关注:
--vfs-cache-mode:模式开关,建议直接开writes,即写入时先落到本地临时文件,再异步上传到远程。这样即使网络波动,写入操作也不会因为断流而失败。--vfs-cache-max-size:本地缓存的最大容量,比如 10G,超过这个尺寸会触发自动清理。--vfs-read-chunk-size:远程文件读取数据块的大小,默认 128M 偏大,对小文件频繁访问的场景可以调到 64M。--vfs-read-chunk-size-limit:数据块大小的上限,防止超大文件读取时一次性占用太多内存或带宽。
这些参数如果不在配置里设置,rclone 会使用默认值,在弱网环境下体验会很差。我自己的经验是,挂 WebDAV 时把 --vfs-cache-mode writes 和 --vfs-cache-max-size 10G 这两个参数作为标配,绝大多数问题都能规避。
3. 从零开始实操:安装、配置与挂载
3.1 安装 rclone 的三种方式,按需选择
rclone 的安装非常简单,官方提供了多平台安装脚本。Windows 上直接去官网下载 zip 包解压就能用,可执行文件只有一个 rclone.exe,不需要安装程序,也不写入注册表。Linux 上推荐用官方安装脚本:
bash复制curl https://rclone.org/install.sh | sudo bash
如果你不想用管道脚本,也可以直接下载 tar 包解压到 /usr/local/bin:
bash复制wget https://downloads.rclone.org/rclone-current-linux-amd64.tar.gz
tar -zxvf rclone-current-linux-amd64.tar.gz
cd rclone-v*-linux-amd64
cp rclone /usr/local/bin/
chmod +x /usr/local/bin/rclone
macOS 用户更简单,用 Homebrew:
bash复制brew install rclone
我个人的偏好是:Windows 机器上把 rclone.exe 放到 C:\tools\rclone\ 下,然后把这个目录加进系统的 PATH 环境变量,这样在 CMD 和 PowerShell 里都能直接用 rclone 命令;Linux 服务器上则统一用二进制文件放到 /usr/local/bin,因为脚本安装方式有时候会因为网络问题下载失败。
安装完成后,跑一下 rclone version 验证是否成功。出现版本号就说明环境已经准备好了。
3.2 配置 WebDAV remote:交互式命令和手动编辑
rclone 的所有远程连接配置都保存在一个配置文件中。默认路径在 Linux 是 ~/.config/rclone/rclone.conf,Windows 是 C:\Users\你的用户名\.config\rclone\rclone.conf。你可以用交互式命令来生成这个文件,也可以手写。
交互式配置是最稳妥的方式,运行 rclone config,按提示操作:
bash复制rclone config
进入交互界面后,选择 n 新建远程连接,名称建议取一个直观的,比如 mydav。然后选择 WebDAV 对应的编号(不同版本编号会变,注意看列表里的 WebDAV 选项)。之后需要填写:
url:WebDAV 服务的根地址,比如https://nas.example.com:5006,注意这里要填到能直接访问到 WebDAV 服务的一层,有些虚拟主机需要在后面加/remote.php/webdav/这样的子路径。vendor:服务商类型。如果你用的是 Nextcloud、OwnCloud 这类知名系统,可以选对应的选项,rclone 会做针对性适配;如果是通用 WebDAV 服务或者自建 Tomcat WebDAV 工程,选other就行。user:用户名。pass:密码,rclone 会采用加密方式写入配置文件,不会明文保存。
这些信息填完后,rclone 会进入配置验证环节,让你选择是否进行连接测试。建议选 y 确认一下能通,然后 q 退出,配置就算完成了。
如果觉得交互式命令慢,可以直接编辑配置文件。比如这样一段配置:
ini复制[mydav]
type = webdav
url = https://nas.example.com:5006
vendor = other
user = admin
pass = ***加密后的密码字符串***
这里的 pass 不是明文密码,需要先用 rclone obscure 你的密码 生成加密字符串。注意,这个 obscure 只是简单的混淆加密,不是真正意义上的安全加密,如果你的配置文件泄露,密码照样会被解开。所以配置文件本身要设置好权限,Linux 下建议 chmod 600。
3.3 在 Windows 上把 WebDAV 挂载成盘符
配置好 remote 之后,挂载命令就一行的事。打开 CMD 或 PowerShell,执行:
powershell复制rclone mount mydav:/ Z: --vfs-cache-mode writes --vfs-cache-max-size 10G --network-mode
解释一下参数的含义:
mydav:/:表示使用刚才配置好的mydavremote 的根目录。如果你想映射某个子目录,比如/共享/文档,就写mydav:/共享/文档。Z::要挂载的盘符,Windows 下用盘符加冒号表示。--vfs-cache-mode writes:开启写入缓存,这是保证稳定性的关键。--vfs-cache-max-size 10G:限制缓存最大占用磁盘空间。--network-mode:告诉 rclone 目标盘符是网络驱动器,Windows 系统会减少某些不兼容的本地磁盘优化策略。
执行后,窗口会保持在前台运行,打印日志。此时打开资源管理器,你会发现 Z: 盘已经出现了,访问里面内容就跟访问本地磁盘一样,只是文件列表加载会有一点点延迟,毕竟是走网络。
但这里有个很烦人的问题:CMD 窗口一关,挂载就断了。想要长期稳定挂载,得让 rclone 在后台运行。Windows 下我推荐用 PowerShell 启动一个后台进程:
powershell复制Start-Process rclone -ArgumentList 'mount','mydav:/','Z:','--vfs-cache-mode','writes','--vfs-cache-max-size','10G','--network-mode' -WindowStyle Hidden
这样窗口不会弹出来,rclone 在后台跑。不过这种方式的缺点是没法方便地看日志,建议把日志写到文件里:
powershell复制Start-Process rclone -ArgumentList 'mount','mydav:/','Z:','--vfs-cache-mode','writes','--vfs-cache-max-size','10G','--network-mode','--log-file','C:\logs\rclone-mount.log' -WindowStyle Hidden
3.4 Linux 下挂载和开机自动挂载的完整配置
Linux 下挂载命令和 Windows 很像,但挂载点是一个普通目录:
bash复制mkdir -p /mnt/webdav
rclone mount mydav:/ /mnt/webdav --vfs-cache-mode writes --vfs-cache-max-size 10G --daemon
--daemon 参数让 rclone 在后台以守护进程方式运行,不用额外加 nohup。
但是,单纯手动执行并不能满足“开机自启”的需求。为了开机自动挂载,我推荐使用 systemd 服务。新建一个服务文件 /etc/systemd/system/rclone-webdav.service,内容如下:
ini复制[Unit]
Description=Rclone Mount WebDAV
After=network-online.target
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/local/bin/rclone mount mydav:/ /mnt/webdav --vfs-cache-mode writes --vfs-cache-max-size 10G --config /root/.config/rclone/rclone.conf
ExecStop=/bin/fusermount -u /mnt/webdav
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
几个要注意的点:
After=network-online.target和Wants=network-online.target是为了确保网络已经就绪再启动挂载,否则刚开机时 DNS 解析、网络路由可能还没准备好,rclone 会连接失败。Type=notify是 rclone 官方推荐的类型,rclone 会主动通知 systemd“我挂载成功了”,systemd 才会认为服务启动完成。ExecStop那里的fusermount -u是卸载命令,防止服务停止后挂载点还残留。Restart=on-failure会在挂载意外退出时自动重启,这个对长期运行特别重要。
写完服务文件后,执行:
bash复制systemctl daemon-reload
systemctl enable rclone-webdav.service
systemctl start rclone-webdav.service
查看状态用 systemctl status rclone-webdav.service,确认是 running 状态就说明搞定了。这些步骤我已经用了大半年,重启服务器后自动挂载成功率是百分之百,没有出过问题。
4. 关键参数细说:哪些值值得手动调优
4.1 缓存模式的取舍
rclone 的 VFS 缓存模式有四个档位:off、minimal、writes、full。简单说:
off:完全不做缓存,每次读取都直接访问远程服务。优点是本地不占额外空间,缺点是性能最差,网络稍有不稳文件就打开失败。minimal:只缓存文件元信息,文件内容不缓存。适合只做目录浏览,不需要频繁读写的场景。writes:写入文件先写到本地缓存,后台异步上传,读取时不缓存内容。这是最常见的选择,兼顾了写入稳定性和读取性能。full:读写都缓存,适合网络条件差且本地磁盘空间充足的情况。但是缓存写满后处理逻辑比较复杂,新手容易遇到“缓存满但远程没同步”的尴尬。
我给 WebDAV 场景的建议很明确:选 writes。因为这个场景下,读取通常会走流式请求,不做全量缓存对内存更友好;而写入一旦失败,本地缓存还能帮你兜底重试,不至于复制到一半整个任务报废。
4.2 传输并发和限速参数
如果你的 WebDAV 服务端带宽有限,或者你不想挂载操作占满整个上行带宽,可以用两个参数限制:
bash复制--transfers 4
--bwlimit 10M
--transfers 控制并发传输的文件数量,默认值 4,如果你同时往盘里复制很多小文件,可以调到 8 以提高吞吐;但如果服务端性能一般,并发太高反而会把服务端拖死。
--bwlimit 限制带宽,格式是 10M 表示每秒最大 10MB,10M:off 表示高峰时段不限制、其他时段 10MB。这个在共享服务器上特别实用,我住的地方上行带宽紧张,就设了个 --bwlimit 5M,保证挂载同步数据的同时不影响家里人看视频。
4.3 文件时间戳和属性保留
WebDAV 协议理论上支持文件修改时间的读写,但不同服务端实现差别很大。如果你发现挂载后文件修改时间变成了当前时间,而不是原始时间,可以加这个参数:
bash复制--metadata
这个参数会尽量保留文件的元数据,包括修改时间。但是注意,加了 --metadata 之后,某些老旧的 WebDAV 服务端反而会出现 PROPPATCH 报错。我在现代 NAS 系统和 Nextcloud 上都实测过,都是正常的;但在一台老群晖上就出现了“无法保存修改时间”的警告,不过不影响文件读写本身。
4.4 日志级别和故障定位
rclone 的日志级别分为 DEBUG、INFO、NOTICE、ERROR 四档。日常运行建议用 --log-level INFO,会把连接、挂载、文件操作的关键信息都打出来;排查问题时切到 --log-level DEBUG,能看到每次 HTTP 请求的细节,包括 URL、状态码、耗时,基本能定位所有问题。
日志文件不要放在挂载盘里,否则会出现日志和数据互相干扰的情况。我习惯放在系统盘的一个固定目录,比如 Windows 下 C:\logs\rclone.log,Linux 下 /var/log/rclone.log。
5. 常见问题与排查技巧实录
5.1 报错 401 Unauthorized:用户名密码明明是对的
这个是最容易出现的问题。很多人配置时填的用户名密码没问题,但 rclone 依然一直报 401。这时候需要考虑几种情况:
- WebDAV 认证方式不是 Basic Auth:有些服务端要求 Digest Auth,rclone 对 Digest 的支持有限,需要确认服务端配置。
- 用户名需要带域名前缀:比如
域\用户名或用户名@域名,这种格式在 WebDAV 客户端里很常见。 - 密码中带了特殊字符:比如
@、#、$,在手动编辑配置文件时要注意转义,最好通过rclone obscure生成密文密码,避免特殊字符导致解析错误。
排查方法很直接,用 curl 先手动试一次认证:
bash复制curl -u "用户名:密码" -X PROPFIND -H "Depth: 1" "https://你的webdav地址/"
如果 curl 返回 207 Multi-Status,说明认证没问题,问题出在 rclone 配置;如果 curl 也返回 401,那就是服务端账号密码的问题,去服务端重置密码。
5.2 映射成功后复制文件总断:网络不稳定怎么应对
我之前用默认参数挂载时,复制一个大文件到 WebDAV 盘,复制到一半进度条就卡住不动,过几秒直接报错“指定的网络名不再可用”。排查下来发现是因为写入时网络波动导致 HTTP 连接中断。
解决办法就是上面提到的开 --vfs-cache-mode writes。开了写入缓存后,rclone 先把文件完整写到本地临时文件,再断点续传式地上传到远程,即使网络断了,重新连接后还会从断点继续,不会像 Windows 自带映射那样整个任务失败。
如果这样还断,可以再加一个参数:
bash复制--low-level-retries 10
这个参数控制单个请求失败后的重试次数,默认值是 10,但遇到不稳定的 Wi-Fi 网络,10 次可能不够。我在办公室的公共 Wi-Fi 环境下被折腾过,调到 20 之后基本没有再断过。
5.3 中文文件名乱码或者无法显示
WebDAV 的文件名编码规范比较混乱,有些服务端强制使用 UTF-8,有些则按照本地系统编码(比如 GBK)。如果挂载后看到一堆乱码文件名,可以尝试设置文件名编码转换:
bash复制--webdav-encoding slash
这个参数会启用 rclone 对 WebDAV 特定转义字符的处理,对中文路径、特殊字符都有一定改善。如果你的服务端是 GBK 编码,理论上 rclone 也应该自动识别,但部分自建服务需要手动指定。我在一个老国产 NAS 上遇到过乱码,后来通过把服务端 WebDAV 的默认编码强制改成 UTF-8 才彻底解决,所以优先检查服务端配置。
5.4 挂载的盘符在资源管理器里能显示但打不开
这种情况通常是 rclone 进程虽然启动了,但实际连接 WebDAV 服务失败后,进程进入了错误状态但没有退出。查看一下日志文件,如果出现 Failed to mount: mountpoint is in use 之类的字样,说明挂载点被占用了。
Windows 下检查 Z: 盘是否被其他进程占用,可以打开资源管理器看这个盘符是否已经在其他窗口中被打开。Linux 下检查挂载点:
bash复制mount | grep /mnt/webdav
如果显示这个目录已经被挂载了,先执行卸载操作,再重新挂载:
bash复制fusermount -u /mnt/webdav
5.5 开机自启失效:systemd 服务的常见坑
systemd 服务配置好了,但重启后挂载没有生效。我排查过几次,发现大多是这几种情况:
- 网络还没就绪:加
After=network-online.target和Wants=network-online.target后,如果你用的是 NetworkManager,可能需要额外把服务设为systemctl enable NetworkManager-wait-online.service,否则 network-online 目标不会真正触发。 - rclone 配置文件的路径问题:systemd 服务里如果用相对路径,启动时会因为工作目录不对而找不到配置文件。务必在 ExecStart 里通过
--config参数指定绝对路径。 - 挂载点目录不存在:systemd 不会自动创建挂载点,提前用
mkdir -p /mnt/webdav建好目录。 - 权限问题:如果 rclone 服务以 root 身份运行,但配置文件在
/home/某个用户/.config/rclone/rclone.conf,服务可能没有权限读取。把配置文件复制到 root 的.config目录下,或者直接放到/etc/rclone.conf。
5.6 缓存目录越开越大,磁盘被占满
开了写入缓存后,本地缓存目录会逐渐膨胀。默认缓存路径是 ~/.cache/rclone。如果长时间不清理,可能把系统盘塞满。
解决办法有三种:
- 设置合理的
--vfs-cache-max-size,比如 10G 或 20G,rclone 会自动执行清理。 - 定期手动清理缓存目录,但注意要在 rclone 停止挂载状态下清理,否则可能造成文件状态不一致。
- 把缓存目录指向独立的大容量磁盘:通过
--cache-dir参数指定,比如--cache-dir /data/rclone-cache,这样就算系统盘空间紧张,缓存也不会拖垮系统盘。
我自己的 Windows 笔记本上把缓存目录放到了 D 盘,Linux 服务器上放到了数据盘 /data 下,彻底解决了系统盘被占满的问题。
6. 进阶扩展:rclone 还能玩出什么花样
6.1 多个 WebDAV 共享合并成一个盘
如果你有多个 WebDAV 服务,想在一个盘符里同时访问,可以用 rclone 的 union remote 后端。先分别配置好每个 WebDAV remote,再创建一个 union 类型的 remote,把这些目录都挂进去:
bash复制rclone config
按照提示创建 union 类型 remote,然后把你已有的 dav1:、dav2: 都加进去。这样挂载一个盘符,就能看到所有远程共享的文件,非常方便。不过要注意,union 模式对文件名的冲突处理逻辑比较复杂,如果两个服务里有同名文件,rclone 会按照设置好的策略选择其中一个显示,这点需要提前规划。
6.2 通过 rclone 做双向增量同步
挂载只是让远程文件“可见”,如果你想把一部分目录在本地做备份,可以使用 rclone sync 或 rclone copy 命令,而不是单纯挂载。这个方式特别适合“把远程 WebDAV 里的文件夹定时备份到本地 NAS”这样的需求。配合 cron 或计划任务,就能做到全自动同步。
比如 Linux 下每天凌晨 2 点同步:
bash复制0 2 * * * rclone sync mydav:/数据 /backup/webdav --config /etc/rclone.conf >> /var/log/rclone-sync.log 2>&1
和挂载模式相比,sync 命令更可靠,因为它是按文件级别做增量传输,不会因为网络抖动导致整个复制任务失败。
6.3 通过 WebDAV 反向挂载到远程服务器
rclone 不仅能把远程 WebDAV 拉到本地,也可以反过来把本地目录变成 WebDAV 服务,供其他设备访问。用 rclone serve webdav 命令:
bash复制rclone serve webdav /本地目录 --addr :8081 --user admin --pass admin123
这个功能很适合临时共享文件,不用额外装 Apache 或 Nginx 就能开一个 WebDAV 服务。我有时候会把一个项目目录临时共享给同事访问,几分钟就搞定,用完就关掉,比搭建完整服务效率高得多。不过这个命令默认是明文 HTTP,如果要对外网提供服务,建议在前面挂一个 Nginx 做 HTTPS 反向代理,避免账号密码泄露。
7. 我的一些经验和建议
说了这么多,最后分享几条我实际使用下来的私人体会。
第一,如果有条件,优先走 HTTPS 访问 WebDAV。虽然 HTTP 也能用,但文件内容在网络上裸奔,一旦被同网段的人抓包,所有数据都能被看到。我后来给 NAS 上的 WebDAV 配置了有效的 SSL 证书,配置成本半小时,价值无限大。
第二,rclone 挂载之后,不要把重要文件的唯一副本放在盘里。挂载盘虽然方便,但它毕竟依赖网络和服务端稳定性,服务端宕机、网络中断都会导致文件暂时不可用。我的原则是:挂载盘适合日常访问、编辑中转,真正的重要数据必须在本机或 NAS 有第二份备份。
第三,rclone 版本更新很快,功能迭代频繁,如果以后遇到 bug 或新需求,多去官网看 changelog。今年年初我遇到过一个 WebDAV 上传小文件时文件时间戳丢失的问题,当时就是升级版本后解决的,旧版怎么调参数都没用。
第四,调试阶段不要把日志级别设成 INFO 之外,先用 DEBUG 把完整的请求链路看清楚,再改回 INFO 正常运行。我在配置 WebDAV 连不上时,通过 DEBUG 日志发现是服务端返回的 302 重定向没有正确处理,手动把 URL 改成最终重定向地址后问题就消失了,这种问题不看日志根本猜不到。
rclone 把 WebDAV 映射成本地硬盘这件事,本质上就是用一个轻量工具补齐了操作系统和远程文件服务之间的适配层。它既解决了 Windows 自带映射的兼容性问题,又比图形化工具更适合自动化运维。如果你跟我一样有跨设备文件共享的刚需,这套方案值得花一晚上时间去折腾,配置好之后,你会觉得所有网络磁盘都应该体验这么顺滑。
