引言
最近因为项目需要,团队需要一个轻量级的文档中心。调研了一下,方案有以下几种:
- Confluence:最有名,最强大,最通用,最老牌,Atlassian,公司级的wiki就是这货。缺点是团队超过10人用时需要付费,而且价格不菲。:( 忍痛Pass
- Jekyll:著名开源博客工具,大有取代WordPress的趋势,部署相对简单,插件强大,完全免费。缺点是貌似只能够通过和Git交互来新建和更新文章,没有自带的编辑页面。
- Dokuwiki:简单,轻量,支持PHP即可使用,插件丰富,权限控制强大,完全免费,有编辑页面,不懂代码也可以使用。缺点是缺乏对Markdown的原生支持(即使装了插件,也无法完全解析Markdown)
因此对比一番,果断选择Dokuwiki作为文档中心。
安装
首先去官网下载页面下载最新版本的Dokuwiki,根据自己需要动态打包,不需要安装:
开启web容器
笔者环境是Mac,因此下文以mac为例。其它系统参考Dokuwiki的install页面.
Mac系统由于自带了apache,所以打开即可。先输入
sudo apachectl -v
查看系统apache版本,确认apache确实存在:
确定apache确实存在之后,启动apache服务器:
sudo apachectl start
怎样验证apache服务器确实启动了呢?在浏览器输入“http://localhost”,如果发现“It Works!”的字眼,则说明系统成功启动。
如何修改服务端口?
打开Finder,进入/etc/apache2/httpd.conf目录(cmd+Shift+G),编辑httpd.conf文件,找到
Listen 80
一行,改成你想要的端口即可。
至此,web 容器启动完成。
部署
Mac下Apach的DocumentRoot目录是/Library/WebServer/Documents
,将dokuwiki解压缩后的文件夹拷入。
在termial输入php -v
查看php版本。如果没有,请参照PHP安装教程安装PHP
在确定PHP已经安装的前提下,修改PHP文件配置:打开/etc/apache2/httpd.conf
文件,查找#LoadModule php5_module
,去掉前面的注释(#号),保存,退出。
重启Apache
sudo apachectl stop
sudo apachectl start
至此部署过程完成
配置
打开浏览器,输入http://localhost/dokuwiki/install.php
,进入dokuwiki的配置页面。
如果遇到页面提示说dokuwiki权限存在问题,如下图所示:
则需要修改dokuwiki的文件夹权限,修改方法为,在terminl中输入:
sudo chmod -R 777 dokuwiki所在目录(包含dokuwiki)
权限设置好后,重新刷新浏览器页面,如果出现如下界面,说明部署dokuwiki成功:
配置项根据自己需要填写即可。
install页面输入完成后,即可正式进入dokuwiki页面了。
浏览器中输入
http://localhost/dokuwiki/
即可正式开启Dokuwiki之旅。
迁移时可能遇到的问题
如果迁移Dokuwiki时遇到了
The datadir ('pages') at ./data/pages is not found, isn't accessible or writable.
的问题,修改dokuwiki相应目录权限即可。
如果在Ubuntu下运行时发现打开install.php显示的确实php源码,说明php运行环境没有准备好,这时请查看Ubuntu版本,并且参考Dokuwiki的install指导进行安装配置。笔者这里是Ubuntu 16.04, PHP7,因此需要安装
sudo apt-get install apache2 libapache2-mod-php7.0
下一次可以写一篇有关Dokuwiki的plugin和部署到其他系统的文章。
EOF