著名的Twiki,相信很多人都用过吧。
Twiki的安装方法在这里我不再累述,安装参考资料如下:
1,首先在 B 站点安装twiki,假设 B 站点的安装绝对路径为 /u/twiki/ ,Url 地址为 http://www.B.com/twiki 。
注意:
对于虚拟主机可以使用 /bin/.htaccess 文件来配置其参数,运行cgi的条件以及运行 /bin/configure 的权限,如果独立主机,可以更改 httpd.conf 或者 vhost.conf 或者 /twiki.httpd.conf 对子目录的可以使用 /subdir-htaccess.conf 以及设置 /root-htaccess。
2,设置权限
* 首先设置所有目录权限为 0755:
(1)在Unix主机上可以这样设置:
chmod +R 0755 /u/twiki(2)虚拟主机上一般使用ftp自行设置,重点是 twiki 下面的目录 /bin /data /pub /template /locale /lib,如果临时目录 /tmp/twiki 因为不是独立主机,所以最好设置为 /u/twiki/tmp/twiki,并且属性为 0755;
(3)如果是Windows主机,一般不需要特别的权限设置;
* 接着设置 /bin/.htaccess 或者 /twiki.httpd.conf 文件,文件中要素有几个点:
(1)保证 CGI 运行的条件,如果 Apache 用得比较熟悉的话,相信这个不是一个问题;
(2)替换相对应的 {xxx} 变量,改成实际的路径;
(3)设置最低权限,保证下面的安装可以不费事的进行,即不要 httpd 的认证方式,不要对 configure 文件进行权限配置。
我的文件范文如下:
BrowserMatchNoCase ^$ anonymous_spider
Order Allow,Deny
Allow from all
Deny from env=anonymous_spider
SetHandler cgi-script#AuthUserFile /u/twiki/data/.htpasswd
#AuthName 'Enter your WikiName: (First name and last name, no space, no dots, capitalized, e.g. JohnSmith). Cancel to register if you do not have one.'
#AuthType BasicErrorDocument 401 /view/TWiki/TWikiRegistration
<FilesMatch "(attach|edit|manage|rename|save|upload|mail|logon|.*auth).*">
Options ExecCGI FollowSymLinks
<FilesMatch "configure.*">
SetHandler cgi-script
Order Deny,Allow
# Deny from all
# Allow from 127.0.0.1, 192.168.1.10
# Require user CnAngel
# Satisfy Any
</FilesMatch>
# require valid-user
</FilesMatch>
3,建立用户并恢复权限
(1)首先运行 /bin/configure 文件,在 Settings 选项中设置 Security setup,把 {LoginManager} 选项设置为 none ,把 {ScriptSuffix} 设置为你想要运行 CGI 文件的后缀(扩展名),这里我没有填写,即后缀为空,然后保存,这样做的结果是让初始用户拥有编辑 twiki 页面的权限。
注意:有些虚拟主机用户可能因为限制使用不了 RCS 工具,可以使用 Perl 相关模块来代替,只需要将 {StoreImpl} 设置为 RcsLite选项即可解决问题。
(2)接着打开地址 http://www.B.com/twiki/bin/view/TWiki/TWikiRegistration 页面进行注册,比如注册成功的用户名称为 CnAngel ,打开地址 http://www.B.com/twiki/bin/view/Main/TWikiAdminGroup编辑
Set GROUP = CnAngel注意: 默认 Set ALLOWTOPICCHANGE 前面的 "#" 需要去掉
Set ALLOWTOPICCHANGE = TWikiAdminGroup
(3)打开地址 http://www.B.com/twiki/bin/configure 设置 {LoginManager} 为你想验证的方式,一般独立主机使用 ApacheLogin 方式,一般虚拟主机最好采用 TemplateLogin,这些看名字就知道是什么意思了 :)
(4)再次设置 /bin/.htaccess 或者 /twiki.httpd.conf 文件,依照范文将前面的"#"都去掉。
目前用户 CnAngel 可以访问 http://www.B.com/twiki/bin/login 正常的登陆并发表 Twiki 了。
4,转移数据
把 A 站点 /home/twiki/ 的数据转移到 B 站点 /u/twiki/需要几个简单步骤:
(1)将 /u/twiki/data 、/u/twiki/pub 、/u/twiki/templates分别改名为 /u/twiki/data_bak 、/u/twiki/pub_bak 、/u/twiki/templates_bak,这样做的目的是为了防止误操作导致数据丢失;
(2)如果不需要日志,删除 /home/twiki/data 里面的日志记录,防止打包的时候包会很大,对上传有影响;
(3)如果是独立主机,将 /home/twiki/data 、/home/twiki/pub 、/home/twiki/templates tar 成一个包,然后上传到新空间的独立主机上,直接解压到 /u/twiki/;如果是都是虚拟主机,需要采用写脚本上传方式去压缩刚才提到的三个文件夹,然后又利用写脚本上传的方式上传到 /u/twiki/;
(4)将 /u/twiki/data/.htpasswd 备份,并将 /u/twiki/data_bak/.htpasswd 文件复制到 /u/twiki/data/ 目录,如果需要以前的用户名,只需要将备份的 .htpasswd 文件内容合并到目前的 /u/twiki/data/.htpasswd 文件里就可以了。
注意:上传新的目录保证目录的权限仍然为 0755
至此,所有的 Twiki 数据转移完成,如果有任何问题或者疑惑的地方,请联系 join("@", ('cnangel', '126.com'))。