DokuWiki 的官方网址是:https://www.dokuwiki.org/start?id=zh:dokuwiki。官网支持中文,但是部分页面翻译陈旧,可以切换英文查阅。
官方已经给出了详细的安装指南,本文仅结合我的安装经历简述一遍。
简单地说,要安装 DokuWiki,必须具备以下条件:
Apache,IS, litespeed, lighttpd, nginx 和 Abyss 等等都是可以的,我选了 lighttpd。
下载 DokuWiki 以后,把解压出来的文件夹放在 /var/www 目录下。放在这里是因为 lighttpd 默认配置文件的网址首页文件夹是在这个地方。我尝试了放在其它地方,维基不能正常访问,只能放在这里。其实是我不会配置。
如果是用其它服务器,可能解压出来的文件应该放的地方就不一样了。
如果是一个已经在用的 web 服务器,大概就不需要这样配置,直接稍微设置一下就可以让用户访问了。这里大概介绍一下全新安装的 lighttpd 要怎么搞。
lighttpd 的核心配置文件在 /etc/lighttpd/lighttpd.conf。第 88 行 server.port = 80
,我把端口改成了81,不要问我为什么,任性。
第 93 行 server.use-ipv6 = "enable"
,我改成了 disable,否则在我的环境下无法访问。
第 115 行,原文是啥忘了,我改成了 server.document-root = server_root + "/dokuwiki"
,这是我放 dokuwiki 的地方。 server_root 在配置文件里默认定义为 /var/www
。
lighttpd.conf 在第 78 行 include "modules.conf"
,modules.conf 里设定了 ligthttpd 要加载的模块。PHP 是通过 fastcgi 模块来支持的,所以应该在 modules.conf 里启用 fastcgi 模块。
打开 modules.conf ,第 132 行#include "conf.d/fastcgi.conf"
,把“#”号去掉。这里我们看到 modules.conf 调用了 conf.d/fastcgi.conf,我们还需要去编辑一下这个文件。
在 fastcgi.conf 的最后面(实际可以是除了开头意外的任意地方,因为别的内容基本都被注释掉了),加入这么几行:
fastcgi.server = (
".php" => (
"localhost" => (
"socket" => "/tmp/php-fastcgi.socket",
"bin-path" => "/usr/bin/php-cgi"
)))
上面这段的大概意思是说,看到 php 文件,要发给什么组件去处理。具体的解释,可以看这篇文章的“fastcgi 配置”部分。
如果没有记漏的话,到这里基本配置就好了。在 CentOS 7 下,可以用 systemctl start lighttpd
来启动 lighttp。或者,可以用
lighttpd -D -f lighttpd.conf
这样可以看到一些错误信息输出。这是你可能会遇到一些问题,所以还是有一些地方要再做一下准备。
1、安装 php-fastcgi,运行上面的命令的时候,系统提示着不动 fastcgi 动态库,所以我们需要安装这个东东。
2、赋予权限
这一部分我没有系统地做,而是东一榔头西一锤子地一点点改,最后成功运行了。所以没有可以记录的步骤。如果有人记录的详细的步骤,可以来修改这一段。官方也给出了一个设置文件权限的教程。总之目的是,让 dokuwiki 这个文件对 web server 可读写。我基本做法是把整个文件夹的读写权限赋给 lighttpd 用户(我机器上,lighttpd 以这个用户运行)。后来 selinux 报了一些错误,一一解决,但没有记录。
各项准备好后,就可以访问 DokuWiki 的页面了。第一次访问会提示安装,按页面提示走就行了,没有什么好说的。接下来就是分配用户权限之类的无聊事情。
DokuWiki 好用的地方在于它的插件系统,可以极大的扩展功能。当前,我安装了如下插件:
以上插件除了 Dw2Pdf plugin,都可以通过管理面板的“扩展管理器”安装。Dw2Pdf plugin 可以通过 https://www.dokuwiki.org/plugins 搜索下载,手动安装,因为它太大了。用 Dw2Pdf,如果报错,提示没有 mbstring 什么的,还需要安装 php-mbstring。
各个插件的配置十分简单,各自的主页上(通过 https://www.dokuwiki.org/plugins)搜索都有介绍,基本都可以在管理面板的“配置设置”里集中配置,十分方便。此不赘述。
本文更新时间:2016-07-01