OpenList + WebDAV:打造万能的 NAS 播放网关

作者: OnlinePlayer Team
教程openlistwebdavnas群晖威联通
OpenList + WebDAV:打造万能的 NAS 播放网关

OpenList + WebDAV:打造万能的 NAS 播放网关

如果你拥有 NAS(群晖、威联通、Unraid)或者使用了 Alist 这样的网盘挂载工具,你可能遇到过这种挫折:

  1. 在 NAS 上开启了 WebDAV 服务。
  2. 兴冲冲地在各类 Web 播放器里输入 WebDAV 地址。
  3. 播放失败(通常是网络错误或无限转圈)。

为什么这么难?罪魁祸首通常是一个叫 CORS(跨域资源共享) 的浏览器安全机制。

痛点一:跨域地狱 (CORS Hell)

现代浏览器非常严格。它们通常不允许一个网页(比如我们的播放器 onlineplayer.app)去读取另一个服务器(你的 NAS home.my-nas.com)上的文件,除非那个服务器显式地回复说:“我允许你读取”。

遗憾的是,绝大多数 NAS 的 WebDAV 原生服务默认都不包含这些允许头。想要配置它,你通常需要 SSH 连进 NAS,修改底层的 Nginx 配置——这对于普通用户来说太硬核了。

痛点二:分散的存储孤岛

你可能电影存在群晖里,电视剧存在阿里云盘挂载的 Alist 里,以前的旧照片又存在一台老旧的 QNAP 里。每次看不同的内容,都要切换不同的入口或 App。

解决方案:OpenList 作为万能网关

这就是为什么我们推荐 OpenList。它不仅仅是一个文件列表程序,它实际上是你家庭数据的 "万能网关"

graph LR
    Browser[OnlinePlayer (网页端)] -->|HTTP/HTTPS| OL[OpenList 网关]
    OL -->|WebDAV| Synology[群晖 NAS]
    OL -->|WebDAV| QNAP[威联通 NAS]
    OL -->|API| Alist[Alist / 云盘]

为什么这个架构更优?

  1. 终结跨域问题:OpenList 专为现代 Web 设计,它会发送正确的 CORS 头。OnlinePlayer 连接 OpenList 时,就像走高速公路一样畅通无阻。
  2. 协议"翻译官":你的浏览器不需要懂 WebDAV 协议(这需要复杂的 Javascript 库)。OpenList 在服务端处理 WebDAV 通信,然后把文件以标准的 HTTP 流推给浏览器。
  3. 统一入口:你可以在 OpenList 后台把群晖、威联通、Alist 全部挂载进来。在 OnlinePlayer 眼里,它们就只是 /nas/aliyun 这样不同的文件夹而已,体验完全一致。

实战:三步打造播放中心

第一步:在 OpenList 挂载 WebDAV

  1. 登录你的 OpenList 管理后台。
  2. 进入 存储 (Storage) -> 添加 (Add)
  3. 选择驱动为 WebDAV
  4. 填写你的 NAS 信息:
    • 挂载路径:例如 /synology-movies
    • 地址http://192.168.1.10:5005 (如果是内网) 或你的 DDNS 域名
    • 用户名/密码:NAS 的账号密码。

第二步:连接 OnlinePlayer

  1. 打开 onlineplayer.app
  2. 点击 OpenList 图标。
  3. 输入你的 OpenList 地址、用户名和密码。

这就搞定了。 现在你可以流畅播放 NAS 里的 4K 原盘电影,不用担心跨域报错,也不用在 NAS 上装任何难用的插件。

关于性能

"中间加了一层 OpenList,会变慢吗?"

几乎不会。 OpenList 做的是流式透传(Streaming Proxy)。它收到 NAS 的数据包后立刻转发给浏览器,不会等文件下载完。只要你的 OpenList 和 NAS 之间的连接够快(通常都在同一个局域网或 Docker 网络里),增加的延迟可以忽略不计(< 1ms)。

总结

既然浏览器不喜欢旧时代的 WebDAV,那就别强求。用 OpenList 作为一个现代化的中间层,把那些“顽固”的存储设备统统接管过来。这才是 2025 年该有的家庭媒体中心架构。

立即连接 OpenList