pre-request:
- 一台云服务器,可以通过公网地址或者域名访问(笔者使用的是腾讯云)
- Go版本的webdav服务程序:https://github.com/hacdias/webdav,需要下载对应版本的可执行文件放至服务器(可以通过
scp
命令传输文件)
在下文中,~
表示用户根目录,例如腾讯云的默认用户目录位于/home/ubuntu
,用户名为ubuntu
step1 webdav配置
参考官方教程及https://cloud.tencent.com/developer/article/1876298?from=15425,创建config.yaml
文件如下(用户名,密码以及文件共享路径自行修改,若共享路径不存在,需要先自行创建):
# Server related settings
address: 0.0.0.0
port: 8558
auth: true
tls: false
cert: cert.pem
key: key.pem
# Default user settings (will be merged)
scope: .
modify: true
rules: []
users:
- username: user1
password: user1
scope: /home/ubuntu/WebDav
- username: user2
password: user2
scope: /home/ubuntu/WebDav
需要注意的有2点:
- 端口port需要保证云服务器后台端口设置中已经启用
- 第二点比较奇怪的是笔者设置了2个用户及密码才在zotero连接上,否则一直报错,这个读者可以自行再验证一番
设置完后执行下列命令启动webdav服务:
$ ./webdav -c config.yaml
会得到以下输出内容:
表示正在监听服务,监听端口为前面设置的8559。
在Linux环境下可以将该服务注册为系统service,实现开机自启动,具体可以参考教程:https://cloud.tencent.com/developer/article/1876298?from=15425
step2 zotero设置
下一步来到了zotero设置,URL协议选择http,网站记得带上端口号,用户名和密码需要和前面设置的一致,第一次配置的时候会提示建立zotero目录,点击验证服务器进行验证,至此就完成了zotero使用自建WebDav服务器精选文学数据同步的工作。