从雷傲论坛转换到Dscuz!论坛

王朝other·作者佚名  2006-11-23
窄屏简体版  字體: |||超大  

Discuz!是非常知名的论坛系统,今天我们介绍一下从雷傲论坛转换到Discuz!论坛的方法。

一、环境配置

选择的服务器环境是WINXP+II5,首先请确保电脑上的IIS已经配置完成,并且IIS的主目录指向D:\WEB。

1、让服务器支持PHP。我选择的是php-4.3.11-Win32.zip

解压缩PHP压缩包到C:\PHP(这个路径可以随意,不过以下要是用到这个路径,请相应的修改)。

复制C:\PHP目录下的php4ts.dll及C:\PHP\dlls目录下的所有文件到windows的c:\windows\system32文件夹里:

其中C:为你现在所使用的操作系统的系统盘,如果你目前操作系统不是安装在C:\windows下,请相应做出修改。

复制php.ini-dist到C:\windows下,并将其改名为php.ini。然后用记事本打开,利用记事本的查找功能搜索 extension_dir = "./",并将其路径指到你的 PHP 目录下的 extensions 目录,比如:extension_dir = "C:\PHP\extensions";再搜索 register_globals = Off,将 Off 改成 On,直接保存关闭 php.ini 即可。

2、让服务器支持MYSQL。我选择的是mysql-4.0.20d-win.zip

下载获得Mysql的for win32安装包后,用winzip解压缩,直接运行setup.exe,需要注意的是选择一个安装路径,当然,安装路径可以任意,建议选择C:\MySQL目录。安装完成后MySQL也就完成了。默认的用户名是root,密码为空。

进入C:\mysql\bin\,双击winmysqladmin.exe,就可以启动MYSQL数据库了(此时在系统托盘处可以看到

图标)

3、让IIS对PHP进行解析。

请按以下图示操作

至此Discuz!论坛的运行环境就全部配置完毕了。

二、准备好待转换的雷傲论坛程序

根据我的经验是直接将雷傲论坛的全部文件下载下来,分为cgi-bin和non-cgi两个文件夹,存放到D盘的LBBBS目录下面。

三、配置LB2DZ转换程序,开始转换

转换程序可以在Discuz!官方进行下载,下载地址:http://www.discuz.net/thread-249700-1-1.html配置转换程序lb32discuz41.php

本地

//$lb_user = "D:/LBBBS/cgi-bin/members6VzyhOD9L/"; // LB的用户资料绝对路径, 最后不要遗漏"/"

//$lb_dir = "D:/LBBBS/cgi-bin/"; // LB 的绝对路径, 最后不要遗漏"/"

//$lb_attach = "D:/LBBBS/non-cgi/usr/"; // LB 附件路径, 最后不要遗漏"/"

//$lb_attach = "D:/WEB/discuz/attachments/LBuploads/"; ///LB附件移动到Discuz!4.1.0目录中的位置,后面添加/

服务器

//$lb_user = " D:/LBBBS/cgi-bin/members6VzyhOD9L/"; // LB的用户资料绝对路径, 最后不要遗漏"/"

//$lb_dir = " D:/LBBBS/cgi-bin/";

//$lb_attach = "D:/WEB/discuz/attachments/LBuploads/"; // LB 附件路径, 最后不要遗漏"/"

在本地安装Discuz!4.1程序

安装目录设为D:\WEB\discuz,在浏览器目录执行安装程序install.php。

需要注意的是以下的设置:数据库用户名默认的root,数据库密码保留空(因为当初安装的时候没设密码的哈),数据库名称就写个test的吧。

然后一路下来就可以将Discuz!4.1安装好。

开始进行数据的转换工作

运行转换程序lb32discuz41.php,如果一切顺利,转换程序将一直自动运行到结束。我在经过几次转换后,也总结了一些常见的问题和错误。

出现问题最多的就是在转换用户数据那步,经常因为用户名有重复而导致进程的终止。

解决好了用户数据转换这步,其他步骤的转换都是水到渠成的事情。

经过多次摸索,我采用了另外的一种转换方式,首先将雷傲的用户数据转换成动网的,再使用动网转DZ的程序,完整的把用户数据转换过来。经过多次实践,这个方法能够保证用户数据最大程度的完整。

雷傲转动网的程序可以到下面地址下载:http://www.discuz.net/viewthread.php?tid=232205&extra=page%3D1%26filter%3Ddigest

转换完成后,记得到后台管理那更新各项统计信息。同时记得把雷傲的所有附件移到D:/WEB/discuz/attachments/LBuploads/下

最后来完成对附件的关联

升级数据库,执行:

SELECT MAX(tid)

FROM cdb_threads;

请在./include/discuzcode.func.php中找到

for($i = 0; $i <= $discuzcodes['pcodecount']; $i++) {

$message = str_replace("[\tDISCUZ_CODE_$i\t]", $discuzcodes['codehtml'][$i], $message);

}

上面加

//LB转换数据后专用 $tid是你主题的最大id

global $fid,$tid;

if ($tid < 11253) {

$lbfilepath = './attachments/lbupfile/';

$message = preg_replace(array( "/\[UploadFile=([^\[]+?)\.(gif|jpg|png|bmp|jpeg)\]/ies", "/\[UploadFile=(.*)\]/ies"),

array("bbcodeurl('\\1', '<center><img src=\"".$lbfilepath.$fid."/\\1.\\2\" border=\"0\"

onload=\"if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt=\'Click here to open new window\';}\" onmouseover=\"if(this.resized) this.style.cursor=\'hand\';\" onclick=\"if(this.resized) {window.open(\'%s\');}

\"></center><br>')", "bbcodeurl('\\1', '【<a href=\"".$lbfilepath.$fid."/\\1\" target=\"_blank\"

style=\"color:#0000FF;font-weight:bold\">点击下载文件</a>】')"), $message);

}

unset($fid,$tid,$lbfilepath);

//LB转换数据后专用

四、完成转换工作

注意:删除转换程序lb32discuz41.php

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航