Wiki,概念的发明人是沃德·坎宁安(Ward Cunningham,1949.5.26-),WikiWiki一词来源于夏威夷语的“wee kee wee kee”,原本是“快点快点”(quick)的意思。
本文根据实际使用经验,讨论一种实用的分布式个人知识库(wiki)架构。
完整的分布式个人知识库包括以下功能:
以下组件可以根据需要选择:
下文分别说明各组件。
本地编辑Markdown的编辑器很多,本文推荐Typora。
Typora,完全免费,支持Windows、Linux、OS X主流操作系统,使用操作系统的目录层次结构管理Markdown文档。功能丰富,所见即所得编辑。支持多种格式文档导出、全文搜索等。
如果希望Wiki发布到网络上,则需要一个在线Wiki管理系统。
本方案推荐使用DokuWiki。相比较于WordPress,优点如下:
Typora与DokuWiki很好地结合使用,使用同一套Markdown数据,前者负责本地Markdown编辑,后者负责前端在线服务(也可以在线编辑Markdown文档)。
虽然两者可以直接结合使用,但是毕竟是两套独立系统,还需要做一些改造,以便更好地融合:
在特定网络环境下,例如外网,我们希望控制用户访问Wiki的权限。DokuWiki的ACL(访问控制列表),可以达到按用户设定Wiki访问权限的目的。
为了解决Wiki数据分布式共享,建议使用git管理Wiki数据,在云服务器上部署Git Server,这样,我们可以随时随地,异地共享数据。
在内网和外网分别部署DokuWiki,分别设置ACL权限,可以达到内外网独立管理目的,而Wiki数据来自同一个Git仓库。