stackedit 因为最近更新的原因 github 同步可以使用了,但其他方式仍然无法使用,如果仅仅使用浏览器的本地备份可能那天浏览器自动清理储存就丢失文档了。
我们需要使用 stackedit 自带的 couchdb workspace 进行本地同步
为何使用本地同步而不是在线同步
安全
stackedit 不能通过登录数据库账号进行权限管理,所以我们必须要使用所有人都能修改的数据库。知道链接的人都可以进行修改数据库,你不想你的文档变成王警官查你账号。couchdb 的数据库在服务器上也不是加密的。便宜
官方给了一个免费的 couchdb 服务器,但是现在无法使用。本地使用只需要运行 stackedit 就能够使用。
使用方式
-
在你的平台安装 couchdb
每个平台都不同,这里不再说,但使用 android 的难度和稳定性可能会比较差。 -
配置 couchdb
生成证书
shell> mkdir /etc/couchdb/cert shell> cd /etc/couchdb/cert shell> openssl genrsa > privkey.pem shell> openssl req -new -x509 -key privkey.pem -out couchdb.pem -days 1095 shell> chmod 600 privkey.pem couchdb.pem shell> chown couchdb privkey.pem couchdb.pem
local.ini
[admins] ; if not set admin password, couchdb can not startup. admin = pa [chttpd] port = 5984 bind_address = 127.0.0.1 enable_cors = true ; cert_file and key_file edit to you cert file location. [ssl] port = 6984 enable = true cert_file = ./cert/couchdb.pem key_file = ./cert/privkey.pem [cors] origins = https://stackedit.io credentials = true
-
运行 couchdb
生成数据库
shell> curl -Xk PUT https://localhost:6984/stackedit-workspace
-
更改数据库权限
shell> curl https://localhost:6984/stackedit-workspace/_security -Xk PUT -H 'content-type: application/json' -H 'accept: application/json' -d '{"admins":{"names":[],"roles":[]},"members":{"names": [],"roles": []}}'
-
将数据库链接到 stackedit
点击 menu → workspace → add a couchdb workspace
输入https://localhost:6984/stackedit-workspace
如何进行网络同步
可以使用任何同步文件的工具进行同步数据库,couchdb 数据库可以复制文件同步数据库。需要保持 vm.args 中 -name 相同。