Joomla/Joomla!1.5与Dokuwiki的完全整合方案
在Joomla!网站上搭建Wiki知识库,实现多人在线联编(译)功能是无法回避的一个实际需求。本条目演示Joomla! 1.5.10与Dokuwiki版本之间的整合过程。
安装前准备工作[ ]
整合所需软件:
- Joomla! 1.5.10 中文版
- Dokuwiki 中文版
- Dokuwiki Bridge 桥接器
本教程演示的安装环境:
- 服务器:XAMPP 1.7
- Joomla 1.5 安装在 http://localhost/1510
- Dokuwiki 安装在 http://localhost/1510/dokuwiki
详细安装步骤[ ]
安装Dokuwiki[ ]
在xampp\htdocs\1510 目录下新建一个子目录名为 dokuwiki,把 Dokuwiki 的安装包文件解压进去。然后通过浏览器访问如下地址:
http://localhost/1510/dokuwiki/install.php
就能看到 Dokuwiki 的安装画面。在右上角选择语言为 zh,就切换为简体中文安装界面(直接访问 http://localhost/1510/dokuwiki/install.php?l=zh 这个地址作用相同):
由于 Dokuwiki 是基于纯文本的 wiki 程序,不需要任何数据库支持。因此我们简单填写一下管理员帐号就能完成安装过程。为了与 Joomla 的用户帐号区别开,我们在安装 Dokuwiki 时创建的管理员帐号为 joomlagate,密码为 000000,将 wiki 类型选择为第二种:公开的维基(只有注册会员才能编辑):
填写了上述信息后,点击左下角的“保存”按钮,就完成了 Dokuwiki 的安装过程,接下来看到如下画面:
请按照屏幕提示,及时删除 install.php (在 dokuwiki 根目录下)。然后点击给出的链接就能看到安装好的 Dokuwiki 前台:
到这里就完成了 Dokuwiki 的安装。从安装路径可以看出来,我们是将 Dokuwiki 安装在 Joomla 根目录下,如果你的安装路径关系与此不同,请注意在后面的描述中不要照搬本文的设置,而需要按照你真实的安装路径来修改相关代码。
安装、设置Dokuwiki桥接器[ ]
1.用文本编辑器打开 dokuwiki/conf/dokuwiki.php 这个文件,在大约第69行,找到如下代码:
$conf['authtype'] = 'plain';
修改为:
$conf['authtype'] = 'joomla';
2.打开 Dokuwiki 桥接器,选择针对 Joomla 1.5 的压缩包,里面只有一个文件 joomla.class.php ,将这个文件解压到 xampp\htdocs\1510\dokuwiki\inc\auth 目录下。不要修改这个文件的名称。
3.接下来要对桥接器文件进行修改,主要是输入 Joomla 的管理员帐号和安装路径。用文本编辑器打开 joomla.class.php 这个文件,在大约第12行,可以看到如下代码:
$conf['superuser'] = "admin";
如果你的 Joomla 管理员帐号正好是 admin,就不用修改了;如果你的 Joomla 管理员用户名不是 admin,请修改这一行代码中的 admin 为你的真实帐号。在这一行代码下方大约第14行,可以看到如下代码:
include_once("../configuration.php");
这个指的是 Joomla 根木下的 configuration.php 文件的路径。表示的方法是 joomla/configuration.php 相对于 dokuwiki/index.php 文件的路径。请根据你安装 Joomla 和 Dokuwiki 的相对关系来设置这一项。
到此,Dokuwiki 桥接器的设置已经完成了。
进阶设置[ ]
现在请访问 http://localhost/1510/dokuwiki/doku.php 打开 Dokuwiki 的前台首页,点击右下角的“登录”按钮,可以看到如下的登录表单:
现在我们用 Dokuwiki 的管理员帐号 joomlagate 来登录,你会发现无法登录!这是因为桥接器已经生效了,Dokuwiki 现在认证会员身份的根据是 Joomla 的用户表,而不是 Dokuwiki 自身的用户表。
请再看上面的截图,在 Dokuwiki 的登录表单上仍然有“注册”链接,很显然这个链接将使用 Dokuwiki 的注册功能来创建新用户,而桥接之后 Dokuwiki 只“认”Joomla 里面的用户。因此,我们必须禁用 Dokuwiki 自身的注册功能。
禁用Dokuwiki自身的注册功能[ ]
我们使用 Joomla 的管理员帐号 admin 及密码 000000 登录,现在可以顺利登入 Dokuwiki(这足以证明已经桥接成功)。登入之后点击右下角的“管理”按钮(如上图所示),然后点击“配置设置”,可以看到比较长的一个页面,有很多参数。我们找到“停用 DokuWiki 功能”这一节(如下图所示),将“注册”勾选,然后点击页面左下角的“保存”。现在点击页面右下角的“退出”按钮,退出登录后再次点击“登录”按钮,就会发现在登录表单上不再显示“注册”链接了。
那么,我们在安装 Dokuwiki 时所创建的那个管理员帐号 joomlagate 岂不是作废了?也未必。你现在可以在 Joomla 后台的“用户管理”中手动创建一个新用户,用户名就是 joomlagate,密码还是原来的 000000,这样就可以让 joomlagate 这个帐号能够继续登录 Dokuwiki。
参考来源[ ]
http://www.joomlagate.com/article/joomla15-tutorial/login-dokuwiki-with-joomla-user-account/