Joplin 中文网 v3.3.4 已更新(2026-07-15)—— 新增富文本编辑器改进,优化同步性能,立即更新

Joplin通过Nextcloud同步配置详解:自托管WebDAV完整教程

立即下载Joplin 中文网 全平台支持 · 官方最新版

为什么选Nextcloud做Joplin同步

Joplin内置File system、Joplin Cloud、WebDAV等多种同步方式。其中Nextcloud作为WebDAV后端是很多技术用户的首选,原因有三:

但从零搭建Nextcloud并对接Joplin有不少坑,本文按步骤详解整条链路。

准备工作清单

在开始前确保具备:

必备项 说明 推荐方案
一台VPS或家庭服务器 2核4G内存即可跑Nextcloud 阿里云轻量/腾讯云轻量/NUC自建
公网IP或内网穿透 Nextcloud需要被Joplin访问 公网IP/Cloudflare Tunnel/FRP
域名 WebDAV访问需要可解析的域名 任意域名均可
Nextcloud部署 LNMP/Docker一键 推荐NextCloudAIO Docker
Joplin客户端 桌面+移动端 官方下载

部署Nextcloud(Docker AIO方式)

1. 系统准备

# Ubuntu/Debian系
sudo apt update && sudo apt install -y docker.io docker-compose

# 启动Docker
sudo systemctl enable --now docker

2. 启动NextCloudAIO

sudo docker run -d \
  --name nextcloud-aio-mastercontainer \
  --restart always \
  --publish 80:80 \
  --publish 8080:8080 \
  --publish 8443:8443 \
  --volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
  --volume //var/run/docker.sock:/var/run/docker.sock:ro \
  ghcr.io/nextcloud-releases/all-in-one:latest

3. 初始化

  1. 浏览器打开 https://你的IP:8443
  2. 复制显示的密码
  3. 等待自动拉取镜像
  4. 选择要启用的容器(默认即可)
  5. 设置管理员账号密码

AIO方式自动处理HTTPS、反向代理、cron等繁琐配置,比手动安装快得多。

4. 验证WebDAV

Nextcloud的WebDAV端点默认为:

https://你的域名/remote.php/dav/files/用户名/

在终端测试:

curl -u 用户名:密码 -X PROPFIND \
  -H "Depth: 1" \
  https://你的域名/remote.php/dav/files/用户名/

返回XML则WebDAV连通。

配置Joplin

1. 创建专用应用密码

不要用Nextcloud管理员密码同步Joplin,而是创建一个应用密码:

  1. 登录Nextcloud网页版
  2. 右上角头像 → 个人设置 → 安全 → 应用密码
  3. 名称填 Joplin
  4. 点击创建新应用密码
  5. 系统生成一段类似 xxxxx-xxxxx-xxxxx-xxxxx-xxxxx 的字符串

2. 在Joplin中配置WebDAV同步

  1. 打开Joplin桌面端
  2. 设置 → 同步
  3. 同步目标选择 WebDAV
  4. 填写:
    • WebDAV URL:https://你的域名/remote.php/dav/files/用户名/
    • 用户名:Nextcloud用户名
    • 密码:刚才创建的应用密码
  5. 点击检查同步配置验证

![Joplin同步配置示意图]

3. 启动首次同步

第一次同步会创建以下结构:

/Joplin/
  ├── locks/
  ├── resources/
  │   └── {hash1}  ← 附件原始文件
  │   └── {hash2}
  └── {syncId}.md  ← 笔记元数据

笔记和附件分离存储,附件按内容哈希命名,支持去重。整个过程对几百MB的笔记库通常几分钟内完成。

4. 移动端同步

手机/平板上同样配置WebDAV:

只要用同样的Nextcloud账户,多端会保持完全同步。

端到端加密配置

加密的作用

Joplin默认情况下,笔记内容以明文存储在WebDAV服务端。这意味着如果你的Nextcloud被攻破,攻击者能直接看到笔记。

启用端到端加密(E2EE)后:

配置方法

  1. Joplin 设置 → 同步 → 端到端加密
  2. 启用:是(尚未配置)
  3. Joplin生成主密钥
  4. 设置密码保护这个密钥

重要:这个密钥如果丢失,笔记将永久无法解密。建议使用密码管理器备份或单独加密U盘保管。

加密的代价

如果性能成为瓶颈,且你的Nextcloud仅自己访问,可以不启用加密。

同步冲突解决策略

冲突的产生

当你同时在多个设备编辑同一笔记,Joplin在同步时会检测冲突并保留两个版本:

冲突笔记 - 副本:2026-09-09 14:23 (手机)
冲突笔记 - 副本:2026-09-09 14:25 (电脑)

避免冲突的实践

  1. 避免同时离线编辑同一笔记:并行编辑不同笔记是安全的
  2. 手机端关闭后台常编辑:编辑完立即同步
  3. 重要笔记「锁机制」:在标题前加 🔒 临时跳过
  4. 冲突发生后合并:手动对比两个副本,保留需要的部分,删除另一个

自动冲突解决方法

Joplin 10.x 后可以在 设置 → 同步 → 高级 选择:

性能优化

大库(>5000笔记)的痛点

笔记库达到几千条后,初次同步会变慢:

笔记数量 首次同步估计 日常同步延迟
500 30秒 <5秒
2000 2分钟 10秒
5000 5分钟 20-30秒
10000+ 10分钟+ 30秒+

优化方案

  1. WebDAV服务器缓存:Nextcloud启用OPcache + Redis
  2. Joplin数据库:重建sqlite数据库 设置 → 通用 → 维护
  3. 分割同步:按笔记本分别启用同步(10.x新功能)
  4. 升级Nextcloud:22.x版本对WebDAV有大幅优化

服务器端性能调优

// config.php Nextcloud性能设置
'memcache.local' => '\\OC\\Memcache\\Redis',
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' => array(
  'host' => 'localhost',
  'port' => 6379,
),

实战场景

场景一:个人跨设备同步

场景二:家庭/小团队共享

场景三:纯内网(不暴露公网)

场景四:和公司网盘对接

部分企业有Confluence/SharePoint/Nextcloud on-prem实例,问IT申请应用密码后同样配置即可,注意:

常见问题排查

「无法连接到WebDAV服务器」

排查顺序:

  1. 浏览器手动访问URL,确认能登录
  2. 用curl命令测试WebDAV连通性
  3. 检查Joplin同步URL格式(结尾是否需要 /)
  4. 检查Nextcloud .htaccess配置
  5. 查看Joplin日志 帮助 → 查看日志

「同步卡在某个百分比」

通常是单个笔记损坏:

  1. Joplin 设置 → 同步 → 高级 → 重置同步状态
  2. 删除 ~/.config/joplin-desktop/locks/ 目录
  3. 重新触发同步

「WebDAV返回403」

权限问题:

  1. Nextcloud管理员设置 → 检查该用户是否有WebDAV访问权限
  2. 文件被加密存储解密失败 → 临时关闭E2EE测试
  3. URL路径中用户名是否区分大小写

总结

Joplin + Nextcloud + WebDAV 是自托管笔记同步的黄金组合,兼顾安全(可选E2EE)、灵活(无限容量)、可控(自己服务器)。适合技术用户和对隐私敏感的人群。对小白用户,Joplin Cloud官方同步更省心。

这篇教程有帮助吗?立即下载Joplin 中文网试试吧!

全平台支持 · 安全无毒 · 官方最新版