什么是 WebDAV,谁需要它
WebDAV 是一种通用的做法:把文件放在自己的服务器上,而不是某家公司的云盘。Nextcloud、ownCloud、InfiniCLOUD(TeraCLOUD)、坚果云、Koofr、学校的存储空间和大多数家用 NAS 都支持它。
Zotero 同步论文附件的方式有两种:Zotero 存储或你自己的 WebDAV 服务器(在电脑上的 Zotero 里选择,设置 → 同步 → 文件同步)。如果你选了 WebDAV,Zotero 的服务器上就没有你的 PDF,Rectoly 也拿不到,于是每篇论文都显示 文件未同步,直到你在这里设置同一台服务器为止。设置好之后,Rectoly 会像 Zotero 一样读写它。
Rectoly 可以浏览 WebDAV 服务器并从中取出 PDF:在本设备上阅读,或添加到 Mendeley。除了 Mendeley 文库、设备里的文件和监视文件夹之外,这是 PDF 进入 Rectoly 的又一个入口。
如果你的 PDF 是被 ZotFile 或 ZotMoov 移出 Zotero 的,那是另一项设置。请参阅用 ZotFile 或 ZotMoov 链接的文件。
设置 WebDAV
请填写与电脑上的 Zotero 完全相同的内容。Zotero 中的设置位于设置 → 同步 → 文件同步,网址、用户名和密码都从那里照抄。
- 在 Rectoly 中打开设置:
- 设置 ›同步与备份 ›文件同步(WebDAV)。
- 设置 ›同步 ›文件同步(WebDAV)。
- 把附件文件的同步方式设为 WebDAV。
- 连接保持 https,网址只填协议与
/zotero/之间的那一段,例如example.teracloud.jp/dav。/zotero/由 Rectoly 自动加上,所以不要自己写;Zotero 本身的设置也是这样。 - 填写用户名和密码。有些服务需要另外一个密码,请参阅应用专用密码。
- 按验证服务器。
验证服务器会检查这个地址是不是真的 WebDAV 服务器、用户名和密码能否通过,以及 Rectoly 能否放一个测试文件上去并再读回来。通过后,这一行会显示已验证和日期。如果你没按过这个按钮,Rectoly 会在第一次传输前自动验证。
如果服务器上还没有 zotero 文件夹,Rectoly 会问“…/zotero/ 不存在。要现在创建吗?”。选创建,检查就会继续。Zotero 的所有附件都放在这个文件夹里,所以它必须存在。
有些服务器不会在文件刚上传时就显示出来。这时 Rectoly 会说明测试文件没能马上读回来,仍把服务器标为可用并继续。
未加密的 http 地址只允许用于家庭或实验室网络内的服务器(192.168.…、.local 之类),而且会提示连接未加密。其他情况请选 https。无法验证的证书(例如自签名证书)会被拒绝,没有接受它的办法——这一点与 Zotero 相同。
打开论文
阅读的方式没有任何变化。打开论文时,如果 PDF 还不在设备上,Rectoly 会从 WebDAV 服务器取回、解开并打开它。请参阅下载 PDF 与离线阅读。
- 切换到 WebDAV 之前就在 Zotero 存储里的文件仍然从那里打开,所以文库混着两种也不用整理。
- 群组文库的论文始终从 Zotero 存储取。请参阅群组文库与手写。
- 如果服务器上还没有这个 PDF,Rectoly 会说 此 PDF 不在你的 WebDAV 服务器上。请先在电脑上的 Zotero 中同步文件。 Zotero 会在下一次同步时上传文件,所以通常等电脑同步完就好。
每一个下载下来的文件,Rectoly 都会与 Zotero 在条目上记录的指纹核对;损坏的文件会被丢弃,而不是打开。
在 Rectoly 中添加的 PDF
选择 WebDAV 期间,Rectoly 添加到 Zotero 文库的一切都会上传到你的 WebDAV 服务器,而不是 Zotero 存储:把 PDF 添加到 Zotero、监视文件夹,以及从其他应用分享给 Rectoly 的 PDF。
Rectoly 会在 Zotero 中创建条目、把文件上传到你的服务器,并在条目上记录哪个文件属于它。电脑上的 Zotero 会在下一次同步时取走这个文件,并像其他附件一样显示。电脑上不需要再做什么。
- 添加到群组文库仍然走 Zotero 存储,因为群组不能使用 WebDAV。
- 服务器空间不足时,Rectoly 会说 WebDAV 服务器的空间不足,论文不会被添加。
- 上传中断后,下次运行 Rectoly 时会从断点继续;这些步骤可以安全地重复。
- 退出登录会像清除 Zotero 登录信息一样清除保存的密码。在你重新输入之前,Rectoly 会在开始添加 PDF 前停下,而不会悄悄上传到 Zotero 存储。
群组文库与手写
- 群组文库、公共文库和订阅源始终使用 Zotero 存储。 Zotero 本身不允许它们使用 WebDAV,所以选择 WebDAV 不会改变群组的行为。
- 手写保存在 Zotero 存储中。 Rectoly 把阅读模式的手写作为论文旁边的一个小文件保存在 Zotero 中;即使 PDF 在 WebDAV 上,这个文件仍然进入 Zotero 存储,因此手写照样能到达你其他的 Rectoly 设备。请参阅在平板与电脑之间共享手写。
- 切回 Zotero 存储没有任何代价:只要服务器设置还在,已经在 WebDAV 上的论文照样能打开,设备上已有的 PDF 也不会被删除。服务器上的文件怎么处理,由电脑上的 Zotero 决定。
- Rectoly 不会删除服务器上不是自己放上去的东西。
添加服务器
- 打开设置:
- 设置 ›同步与备份 ›WebDAV 服务器。
- 设置 ›同步 ›WebDAV 服务器。
- 连接保持 https,在网址里填你想从哪个文件夹开始浏览。Nextcloud 的地址形如
cloud.example.com/remote.php/dav/files/USER;学校的存储空间或 NAS 各有自己的地址。填写时不要带用户名,也不要带?或#后面的部分。 - 填写用户名和密码。有些服务需要另外一个密码,请参阅应用专用密码。
- 按测试连接。通过后这一行会显示已验证,浏览功能即可使用。
一次只能设置一台服务器。删除会清除设置并把保存的密码从设备上删掉。设置前需要先登录 Mendeley。
未加密的 http 地址只允许用于家庭或实验室网络内的服务器,并会给出提示。其他情况请选 https;无法验证的证书会被拒绝。
浏览服务器并打开 PDF
- 在文库中选择 … ›从 WebDAV 打开…,或从 WebDAV 添加到 Mendeley…。
- 点击文库列表上方的 ⋮ ›从 WebDAV 打开…,或从 WebDAV 添加到 Mendeley…。阅读时,同样的项目也在论文上方的导入菜单里。
列表里只显示文件夹和 PDF,服务器上的其他文件不会列出。点开文件夹进入其中,用上方的路径返回。可以按名称或修改日期排序。Rectoly 会记住上次所在的文件夹。
选中 PDF 后:
- 打开:把它取到本设备并打开,所有阅读功能都可用。它会与其他只存在本设备的 PDF 放在一起,以后可以免费再次打开。请参阅不登录也能打开 PDF。再次选择同一个文件时,只要服务器上没有变化就不会重复下载。
- 添加到 Mendeley:上传到你的文库,标题、作者和年份的确认界面与平时一样。请参阅把 PDF 添加到 Mendeley。也可以选中多个 PDF 依次添加。
Rectoly 只读取你的服务器,不会上传、改名或删除任何东西。一个文件夹里的条目超过数千个时不会列出,而是显示项目太多。请把文件夹拆分。
应用专用密码
有些服务不接受平时登录用的密码通过 WebDAV 访问,而要求另外一个应用专用密码。如果用户名和密码明明没错却被拒绝,多半就是这个原因;开启两步验证后它是必需的。
- Nextcloud、ownCloud: 在个人的安全设置里创建应用专用密码,用它代替登录密码。用户名不变。
- InfiniCLOUD(TeraCLOUD): 在账户页面开启应用连接,系统会签发一个应用专用密码,用它代替登录网站的密码(只显示一次)。
- 坚果云: 在账户的安全设置里添加应用,系统会给出在这里使用的密码。
用户名要用该服务为 WebDAV 显示的那一个,未必是你的电子邮件地址。
密码保存在哪里
地址、用户名和密码只保存在本设备上,密码由系统加密保存:
- 存在钥匙串中;
- 按你的 Windows 账户加密保存;
它们只会发送到你自己的服务器,不会发到别处。Rectoly 的服务器看不到它们,Mendeley 和 Zotero 也不会知道你在用 WebDAV。退出登录会把密码从设备上删除;其余设置会保留,所以只需重新输入密码。请参阅你的数据。
出问题时
提示里提到的始终是你自己的服务器,而不是 Rectoly 的服务器。
| Rectoly 的提示 | 含义与处理 |
|---|---|
| 无法连接服务器 … | 那个地址没有任何响应:网址打错了、没有网络,或者服务器没有运行。可以在浏览器里打开这个地址确认一下。 |
| … 看起来不是 WebDAV 网址 | 有响应,但不是 WebDAV 服务器。通常是路径不对——WebDAV 地址很少与你在浏览器里用的地址相同(Nextcloud 的以 remote.php/dav/files/<用户名> 结尾)。 |
| WebDAV 服务器不接受此用户名和密码 | 用户名或密码不对,或者该服务需要应用专用密码。请参阅应用专用密码。 |
| 你没有访问此服务器上 … 的权限 | 账号本身通过了,但没有该文件夹的权限。请改用属于你的文件夹,或询问服务器管理员。 |
| 找不到该网址对应的文件夹 | 主机名后面的那一段在服务器上并不存在。 |
| 无法验证服务器的证书 | Rectoly 不会使用无法验证的 HTTPS 连接,自签名证书也无法接受。请安装设备信任的证书。 |
| 未加密的连接(http)… | http 只允许用于家庭或实验室网络内的服务器。请选择 https。 |
| 服务器正在限制请求 | 短时间内请求太多——坚果云等服务有明确上限。请等几分钟再试。 |
| 无法打开 WebDAV 服务器上的文件(格式不符) | 取回的东西不是预期的文件。如果只有某一篇论文这样,多半是服务器上的那个文件损坏了。 |
| 此 PDF 不在你的 WebDAV 服务器上 | 电脑上的 Zotero 还没有上传它。请先在电脑上同步文件,再在这里同步文库。 |
| WebDAV 服务器上没有 zotero 文件夹 | zotero 文件夹被移动或删除了。按验证服务器,它会询问是否创建。 |
| 下载的文件已损坏 | 与条目上记录的内容不一致。Rectoly 会丢弃它而不是打开。请再试一次;如果一直这样,请从 Zotero 重新上传。 |
| WebDAV 服务器的空间不足 | 先在服务器上腾出空间,再重新添加。 |
| 服务器声称不存在的文件是存在的 | 这台服务器对不存在的文件的响应不正确,无法安全同步。请咨询服务器管理员。 |
| 本设备上没有 WebDAV 密码 | 退出登录会清除它。请在设置中重新输入并按验证服务器。 |
| 服务器上已经没有这个 PDF 了 | 列表打开期间它被移动或删除了。请重新载入文件夹。 |
| 这个 PDF 太大,无法放到此设备上 | 请选择较小的文件,或腾出设备空间。 |
| 项目太多。请把文件夹拆分 | 一个文件夹里的条目超过了可以列出的数量。请在服务器上把它拆开。 |
诊断数据里只会记录失败的种类,不会记录地址、用户名或文件名。请参阅遇到问题时。