TWiki的安装,配置和用户管理

TWiki是一套基于Perl的wiki实现(为什么又是perl?):功能强大,速度很快,核心存储使用纯文本实现,不需要数据库的支持,因此非常适合企业级的大规模应用:在很多公司都有成功的应用案例

Wik应用路径相对传统内容发布系统比较固定和扁平, 内容之间的连接也非常多 充分体现了Well referenced with easy navigation....
http://www.chedong.com/twiki/bin/view/TWiki/TWikiPreferences
http://www.chedong.com/主目录/程序目录/动作/子库名/页面

TWiki本身的配置分成3级
网站级别: 站点级别的配置都在TWiki/目录下TWikiPreferences ChangePassword ResetPassword等
目录级别: 每个目录下的WebPreferences文件中设置 比如 Main/WebPreferences
页面级别: 每个页面可以设置一些访问参数

搭建使用TWiki的时候, 会发现TWiki中很多的配置居然也是用WIKI页面管理的: 真正将模板技术用到了及至。具体的配置位于TWiki/TWikiPreferences
TWiki语法本身就是一个非常完整的模板语言, 而网站的很多设置都可以使用
Set PARAMETNAME = value
这样的语法进行设置

以下是我在安装时的备忘:(不断更新中)

2006-1-1更新:
1 增加了认证和用户分组方面的配置说明;
2 增加了文德的参考文档;


从TWiki.org下载最新稳定版本:
Wiki20040902.tar.gz那个版本有安全漏洞,我最近下载到的是 TWiki20040904.tar.gz

将twiki解压缩后移动到/home/apache/twiki目录下:将目录下的文件设置为apache服务可以读写, 比如apache实用nobody 用户运行, 那么twiki目录下也要设置为nobody读写.

目录下的列表分布:

bin <== scripts
data <== data: the all meta: structure data and un-structure data
index.html <== default page
lib <== support libary
license.txt <== License
pub <== the public data
pub-htaccess.txt <== pub
readme.txt <== README
robots.txt <== robots.txt: crawler scripts
root-htaccess.txt <== example of root .htaccess file
subdir-htaccess.txt <== example of .htaccess file in sub directory
templates <== default templates
TWikiDocumentation.html <== TWiki documents
TWikiHistory.html <== TWiki history
UpgradeTwiki <== Upgrade scripts
缺省的 data 目录下:
debug.txt <== debug log _default <== default templates wiki page log200501.txt <== monthly logs log200503.txt <== monthly logs log200504.txt <== monthly logs log200505.txt <== monthly logs Main <== package Main(default) mime.types <== apache configure Sandbox <== package Sandbox(testing / trail) Trash <== package Trash bin TWiki <== package Twiki: admin porpose warning.txt <== warning log
每个目录下:就是一个“库” 一个文件 + 一个版本文件
WebHome.txt WebHome.txt,v

编辑时还会有临时:锁定文件
WebHome.lock

如果不改动模板:

chmod a-w templates
chmod g-w templates

Apache的配置修改:

ScriptAlias /twiki/bin/ "/home/apache/chedong.com/twiki/bin/"
Alias /twiki/ "/home/apache/chedong.com/twiki/"
<Directory "/home/apache/chedong.com/twiki/bin">
Options +ExecCGI
SetHandler cgi-script
Allow from all
</Directory>
<Directory "/home/apache/chedong.com/twiki/pub">
Options FollowSymLinks +Includes
AllowOverride None
Allow from all
</Directory>
<Directory "/home/apache/chedong.com/twiki/data">
deny from all
</Directory>
<Directory "/home/apache/chedong.com/twiki/templates">
deny from all
</Directory>

修改TWiki.cfg 到相应的目录和配置下:大部分是缺省路径修改

diff TWiki.cfg /home/apache/chedong.com/twiki/lib/TWiki.cfg
62c62
< $defaultUrlHost = "http://your.domain.com";
---
> $defaultUrlHost = "http://www.chedong.com";
72c72
< $pubDir = "/home/httpd/twiki/pub";
---
> $pubDir = "/home/apache/chedong.com/twiki/pub";
74c74
< $templateDir = "/home/httpd/twiki/templates";
---
> $templateDir = "/home/apache/chedong.com/twiki/templates";
76c76
< $dataDir = "/home/httpd/twiki/data";
---
> $dataDir = "/home/apache/chedong.com/twiki/data";
227c227 以下部分是为了将字符集设置为UTF-8(缺省是英文en_US.ISO-8859-1)
< $useLocale = 0;
---
> $useLocale = 1;
244c244
< $siteLocale = "en_US.ISO-8859-1";
---
> $siteLocale = "zh_CN.UTF-8";

1 请注意参考: IANA字符集命名定义
2 twiki上缺省的显示时间为GMT时间, 可以改lib/TWiki.cfg设置成servertime servertime还是和本地工作时间比较相似

修改:bin/setlib.cfg 虽然缺省不改也能运行,但是很多plugins可能没有那么智能,最好改成绝对路径
diff ../bin/setlib.cfg /home/apache/twiki/bin/setlib.cfg
40c40
< $twikiLibPath = '/home/apache/twiki/lib';
---
> $twikiLibPath = '../lib';


如何设置twiki编辑/上传文件需要认证?

首先设置用户名和密码:
在data目录下缺省有一个 .htpasswd文件,缺省里面只有TWikiGuest一个账号, 密码是guest(是加密的) 要注册的新用户的密码也是在这里

TWiki本身有2种级别的新用户注册机制:
一种是公开注册: 可以直接获得初始化密码;
一种是内部注册: 不可以设置初始化密码, 注册完成后需要将通知邮件转发给后台管理员,然后请管理员在后台手工在.htpasswd文件中加入相应账号的名称和密码;

具体选择那种注册模式, 就看网站的性质了,在注册之前,最好在bin/view/TWiki/TWikiPreferences中将管理员的邮件设置好(目前这个页面是TWikiGuest也能修改的) 同时还可以设置好的还有WIKILOGOIMG 等信息
Set WIKIWEBMASTER = chedong AT chedong.com


如何启用认证和设置对那些操作启用认证:

认证的启用需要设置.htaccess文件, twiki在程序目录下缺省有一个文件: /bin/.htaccess.txt 重命名成 .htaccess 将其中的!FILE_path_to_TWiki!和!URL_path_to_TWiki! 替换成twiki的后台物理路径和网站路径设置就好了,如果修改完成后没有启作用, 可能是httpd.conf配置文件中设置了 AllowOverride None
改称 AllowOverride All .htaccess就启用了.

这样设置后: 用户设置访问edit/attach等写入操作时候会需要经过data/.htpasswd中的用户名

设置了认证启用后: 再设置认证用户之间的分组和管理关系
先设置谁能进入TWikiAdminGroup组
Main/TWikiAdminGroup
这个页面缺省是任何人都可以编辑的

设置好Set GROUP = UserAndy UserBob 这样的配置后
再将当前页面的 Set ALLOWTOPICCHANGE = TWikiAdminGroup 前面的#注释去掉, UserAndy就被设置为管理员了,而且管理员文件也只有管理员组可以修改, 如果改坏了, 就只能让系统管理员改 Main/TWikiAdminGroup.txt 源文件了.


更多参考文档: 来自文德
如何安装TWiki
TWiki 使用入门
TWiki语法

作者: 车东 发表于:2005-06-12 09:06 最后更新于:2007-08-15 17:08
版权声明:可以转载,转载时请务必以超链接形式标明文章 的原始出处和作者信息及 本版权声明

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值