怎么迁移Twiki数据?

著名的Twiki,相信很多人都用过吧。
Twiki的安装方法在这里我不再累述,安装参考资料如下:

  1. Twiki安装向导
  2. Twiki安装FAQ
  3. 文德的 如何安装TWiki(中文TWiki 4.0安装)
这里我只重点讲讲迁移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 Basic

ErrorDocument 401 /view/TWiki/TWikiRegistration
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>

<FilesMatch "(attach|edit|manage|rename|save|upload|mail|logon|.*auth).*">
# 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 = TWikiAdminGroup
注意: 默认 Set ALLOWTOPICCHANGE 前面的 "#" 需要去掉
(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'))

Monthly Archives

Pages

Powered by Movable Type 7.7.2

About this Entry

This page contains a single entry by Cnangel published on June 19, 2007 1:05 PM.

终于搞定了Linux下ipw3945网卡驱动 was the previous entry in this blog.

为普通用户分配特权 is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.