说明:本文档用于帮助您将原有社区产品升级或者转换到 Discuz!X2 正式版本。由于Discuz!6.1、Discuz!7.0升级方法和Discuz!7.2相同,可以参照Discuz!7.2升级方法操作,升级脚本压缩包放二楼。
在您开始升级之前,请务必逐条仔细阅读以下的注意事项:
1、升级之前,为了确保无误,强烈建议您备份原有数据,我们无法对升级前没有备份的用户提供任何技术支持。
2、通常情况下,我们的升级程序放置在发行版本的 ./utilities/convert 目录中,此程序可以独立于产品运行。
3、我们不能保障升级或者转换到 Discuz! X 产品当中所有的数据都是有效的,某些插件或者自行开发的功能数据需要您自行转换。
4、大多数情况下,您升级到 Discuz! X 产品以后,需要进入后台进行一系列重新设置,否则某些功能可能无法正常使用。
5、 除非有特殊的声明,我们的转换程序不会改变您原有的数据格式和设置,他会将原有数据重新复制一份,并做格式转换。所以,在转换开始之前,您应当检查您的数据库存储空间是否够用。假设您原有数据是 100M,您至少需要 200M 以上的数据剩余空间,否则可能无法转换成功。
6、升级成功后,请您删除 convert 程序,以避免可能的安全问题。
7、升级前请关闭所有插件和水印,风格恢复默认。
8、Discuz!7.0升级方法与Discuz!7.2一致,所以只列出Discuz!7.2升级方法。 9、 在升级前,确保UCenter已升级至最新版本1.6.0;新安装Discuz! X2 时,只进行单独安装,不必选择全部安装(含UCenter),也就是说安装包中的uc_server文件夹不必上传。
一、升级前的准备
1、下载 Discuz!X2 正式版本到本地或者服务器上
下载地址:https://download.discuz.vip/DiscuzX/
解压缩得到如下图所示的三个文件:
upload 这个目录下面的所有文件是我们需要上传到服务器上的可用程序文件;
readme 目录为产品介绍、授权、安装、升级、转换以及版本更新日志说明;
utility 目录为论坛附带工具,我们这次升级程序存放在 ./utilities/convert目录中此程序可以独立于产品运行。
2、进入您原来的系统,关闭您的站点。
1)关闭论坛
用管理员登录论坛后台 => 全局 => 站点信息 => 论坛关闭:选择“是”,如图:
2)关闭UCHome
用管理员登录 UCHome 后台 => 基本设置 => 站点信息 => 站点关闭访问:选择“是”,如图:
3)关闭SupeSite
用管理员登录 SupeSite 后台 => 系统管理 => 系统设置 => 暂时关闭站点 => 选择站点关闭,如图:
3、文件备份
注意:Discuz!7.0、Discuz!7.2升级时需要对UCenter进行预先单独升级,所以你需要升级UCenter,UCenter的升级方法详见其文档。 如果您之前在论坛的目录下安装了品牌空间,品牌空间的目录也请不要移动。否则会导致无法使用。
1)论坛程序及其附件的备份
推荐您把论坛目录下的所有目录和文件下载或者拷贝到你要备份的地方,如果您没有对论坛程序和模板做过很大的改动,那么只要备份 attachments (附件目录)就可以了。
我们常用的对论坛程序及其附件的备份方法为:在原论坛根目录下新建一个目录 oldbbs,然后把所有文件全部移动到 oldbbs 目录中。
2)UCHome程序及其附件的备份
推荐您把 UCHome 目录下的所有目录和文件下载或者拷贝到你要备份的地方,如 oldhome。
3)SupeSite程序及其附件的备份
推荐您把 SupeSite 目录下的所有目录和文件下载或者拷贝到你要备份的地方,如 oldss。
4、数据库备份
可以单独备份各个应用的数据,也可以直接在 UCenter 后台备份所有应用的数据,单独备份以论坛为例:
独立主机直接到 MySQL 的 data 目录拷贝一份当前 Discuz! 使用的数据库即可,记得拷贝之前停止 MySQL 服务,否则会造成备份数据的损坏。
虚拟主机用户推荐直接在论坛后台进行备份,用管理员登录论坛后台 => 工具 => 数据库 => 备份:推荐备份“论坛全部数据”,如图:
如果要对备份数据再做其他要求可以点击上图中的“更多选项”根据需要进行选择:
使用 Discuz! 后台备份产生的备份文件在 {站点根目录}/forumdata/ 文件夹下,目录名形如 backup_3c1839
UCenter 备份:
在 UCenter 后台对所有数据进行备份,如果是独立主机直接到 MySQL 的 data 目录分别拷贝一份当前所有应用使用的数据库即可,记得拷贝之前停止 MySQL 服务,否则会造成备份数据的损坏。
虚拟主机用户登录 UCenter 后台 => 数据备份,
使用 UCenter 备份产生的备份文件
Discuz!7.0、Discuz!7.2 中在 {站点根目录}/forumdata/ 文件夹下,目录名形如 backup_3c1839
UCHome2.0 中在 {站点根目录}/data/文件夹下,目录名形如 backup_3c1839
SupeSite 7.5 中在 {在的根目录}/data/文件夹下,目录名形如 backup_bvGFaJ
以及 {UCenter根目录}/data/backup/文件夹下,目录名形如 backup_100920_bb1Vyj
5、上传 Discuz!X2 程序到您的站点目录。
6、正确安装 Discuz!X2(因为之前进行了UCenter升级,这里不需要在安装UCenter)。配置文件config.ucenter.php中uc_api应该指定升级过的那个UCenter。
二、转换/升级数据到 Discuz!X2
1、上传 utilities 目录中的 convert 程序到您的站点。
2、在浏览器中运行 http://www.domain.com/bbs/convert 开始升级/转换(其中 http://www.domain.com/bbs 为你的论坛访问地址)
3、选择产品转换程序,convert 程序当中集成了多种程序可以转换到 Discuz!X2,请您根据系统进行选择。
注意:
1、在开始转换之前,请确保本程序目录下的 data 目录为可写权限,否则无法存储转换设置。
2、如果有 Discuz! 和 UChome 同时需要升级,请务必先升级 Discuz!论坛,我们先升级 Discuz! ,点击修改,对要升级的数据库信息进行设置,
3.1、设置服务器信息
数据源服务器设置 (原始版本的数据库):可以对照之前版本的 config.inc.php 文件中的数据库信息进行填写目标服务器设置 (已正确安装 Discuz!X2 的数据库):填写刚刚安装好的 Discuz!X2 的数据库信息。
填写完成后,点击“保存服务器设置”。
3.2、配置转换过程
默认全选即可。
3.3、执行数据转换
升级/转换过程全部为自动,无需人工操作,请您耐心等待。
3.4、转换完成
会提示您本次升级开始时间和升级结束时间以及升级累计执行时间,如果数据较少,升级是比较快的。升级/转换完成后如下图所示:
4、升级 UCHome
说明:
由于UCHome与Discuz!部分功能进行了整合性融合,因此UCHome的部分功能,在整合到Discuz! X后将会部分丢失。
其中包括:
由于新增专题功能,原UCH热闹功能将不再支持;
UCH投票、UCH活动将与论坛投票贴、活动贴的形式融合为一体,活动相册、活动群组功能将不再支持;
UCH群组将以新的群组功能存在,原群组相册、群组活动功能将不再支持;
个人资料进行了新的调整,UCH原个人资料中的学校、工作信息将需要重新填写;
UCH的全站实名功能不再支持;
请根据自己建站需求,权衡决定是否将UCHome转换升级到Discuz! X。
点击 UCenter Home 2.0 右侧的“开始”链接,如下图所示:(下图中未列出Discuz!7.0,方法是一致的。)
然后进行数据库的配置。
数据源服务器设置 (原始版本的数据库):可以对照之前版本的 config.php 文件中的数据库信息进行填写目标服务器设置 (已正确安装 Discuz!X2 的数据库):填写刚刚安装好的 Discuz!X2 的数据库信息。
填写完成后,点击“保存服务器设置”。
4.1、配置转换过程
默认全选即可,点击“开始转换”。
4.2、执行数据转换
用户组配置:这里对应列出了UCHome中的用户组转到Discuz!X2 的用户组,可以根据自己站点的情况进行选择积分配置:来源积分指的是UCHome中的积分,目标积分指的是转到Discuz! X 对应的积分下,比如UCHome中的积分对应Discuz!X2 中的金钱,这里站长可以根据自己站点的情况进行自由选择。
数据转换配置:源数据包括投票和活动,转到Discuz!X2对应的版块下面。
设置完成并保存后,开始自动转换,如下图所示:
4.3、转换完成
会提示您本次升级开始时间和升级结束时间以及升级累计执行时间
5、升级 SupeSite
说明:Discuz!X2中并未具备SupeSite 7.5中的全部功能,此转换程序,仅转换SupeSite 7.5中的资讯分类、资讯文章数据到 Discuz!X2产品的文章系统中。其他数据将不进行转换。
因此,数据转换后,Discuz!X2 产品存在原有 SupeSite 功能丢失和数据丢失问题,请自行权衡决定是否转换升级。
点击 SupeSite 7.5 右侧的“开始”链接,
然后进行数据库的配置。
数据源服务器设置 (原始版本的数据库):可以对照之前版本的 config.php 文件中的数据库信息进行填写目标服务器设置 (已正确安装 Discuz! X 的数据库):填写刚刚安装好的 Discuz! X 的数据库信息。
填写完成后,点击“保存服务器设置”。
5.1、配置转换过程
默认全选即可,点击“开始转换”。
5.2、执行数据转换
开始自动转换,无需人工干预。
5.3、转换完成
会提示您本次升级开始时间和升级结束时间以及升级累计执行时间。
三、升级后的一些善后操作
论坛的善后操作:
1、编辑新论坛的 config/config_global.php 文件,设定好创始人。
2、直接访问新论坛的 admin.php。
3、使用创始人帐号登录,进入后台更新缓存。
4、新系统增加了很多设置项目,包括用户权限、组权限、论坛板块等等,您需要仔细的重新设置一次。
5、转移旧附件目录(在转移之前,您的帖子将会无法找到任何附件)。
a)进入 old/attachments/ 目录。
b)将所有文件移动到 新论坛目录/data/attachment/forum/目录中。
6、转移用户头像(独立安装 UCenter 的用户不需要这个步骤)。
a)进入 old/uc_server/data/avatar/ 目录。
b)将所有文件移动到 新论坛目录uc_server/data/avatar/。
7、删除 convert 程序,以免给您的论坛安装带来隐患。
8、待测试新论坛的所有功能均正常后,可以删除旧的程序备份和数据备份。
9、如果使用过分类信息,需要重新整理一次分类信息(后台->更新统计->分类信息整理)。
UCHome的善后操作:
1、编辑新Discuz! X的config/config_global.php 文件,设定好创始人
2、直接访问新Discuz! X的 admin.php
3、使用创始人帐号登录,进入后台更新缓存
4、新系统增加了很多设置项目,包括用户权限、组权限、论坛板块等等,您需要仔细的重新设置一次。
5、转移旧附件目录到新产品根目录(在转移之前,您的动态、日志、评论、留言等内容中的图片无法正常显示)
a)进入 old/attachment 目录
b)将所有文件移动到 新Discuz! X产品 /data/attachment/album/ 目录中
c)同时,修改一下 Discuz! X的代码
让日志内容中的已经插入的图片地址,通过字符串替换,改为最新的图片地址,解决日志内容图片无法显示的问题。
方法如下:
打开Discuz!X2的 ./source/include/space/space_blog.php 程序
找到:
1. $blog['message'] =blog_bbcode($blog['message']); 复制代码
在下面增加如下代码:
1. $home_url ='http://your_home_site_url/'; // 请将此链接地址改为您的 UCHome 站点地址!!! 2. $bbs_url ='http://your_bbs_site_url/'; // 请将此链接地址改为您的 BBS 站点地址!!! 3. $findarr =array( 4. '<img src="attachment/', //原uchmoe附件图片目录 5. '<IMG src="'.$home_url.'attachment/', // 原UCHome附件图片目录 6. $bbs_url.'attachments/month', // 原论坛附件图片目录 7. ); 8. $replacearr =array( 9. '<img src="'.$_G['setting']['attachurl'].'album/', 10. '<IMG src="'.$_G['setting']['attachurl'].'album/', 11. $bbs_url.$_G['setting']['attachurl'].'forum/month', 12. ); 13. $blog['message'] = str_replace($findarr, $replacearr,$blog['message']); 复制代码
如果你的UCHome的附件不是存放在默认的 ./attachment 目录,那么修正上面代码的 <imgsrc="attachment/ 中的 attachment 为你自己的附件目录名字
6、转移旧图片目录到新产品根目录(在转移之前,您的动态、日志、评论、留言等内容中的表情无法正常显示)
a)将 old/image 目录和目录下的文件 移动到 新Discuz! X产品的根目录中
7、恢复 space.php URL地址的访问(在恢复之前,您的动态中的站内信息链接将指向无法访问的地址)
1)将 utility/oldprg/uchome/space.php 文件移动到 新Discuz! X产品的根目录中
8、删除 convert 程序,以免给您的Discuz! X安装带来隐患
9、待测试新Discuz!X2的所有功能均正常后,可以删除旧的程序备份和数据备份
SupeSite的善后操作:
1、编辑新Discuz!X2的config/config_global.php 文件,设定好创始人
2、直接访问新Discuz!X2的 admin.php
3、使用创始人帐号登录,进入后台更新缓存
4、新系统增加了很多设置项目,包括用户权限、组权限、论坛板块等等,您需要仔细的重新设置一次。
5、转移旧附件目录到新产品根目录(在转移之前,您的资讯内容中的图片无法正常显示)
a)将 old/attachments 目录和目录下的文件 全部移动到 新Discuz!X2产品的/data/attachment/portal/目录中
b) 在原 SS7 源码下找到图标images/base/attachment.gif,放在 Disucuz! X1 的目录static/image/filetype/ 下;
c) 找到 source/module/portal/portal_view.php 文件,在代码“$content['content'] = blog_bbcode($content['content']);”后换行
添加以下代码:
1. $ss_url = 'http://your_ss_site_url/'; //请将此链接地址改为您的 SS 站点地址!!! 2. $findarr = array( 3. $ss_url.'batch.download.php?aid=', // 附件下载地址 4. $ss_url.'attachments/', // 附件图片目录 5. $ss_url.'images/base/attachment.gif' // 附件下载图标 6. ); 7. $replacearr = array( 8. 'porta.php?mod=attachment&id=', 9. $_G['setting']['attachurl'].'/portal/', 10. STATICURL.'image/filetype/attachment.gif' 11. ); 12. $content['content'] =str_replace($findarr, $replacearr, $content['content']); 复制代码
6、 转移旧图片目录到新产品根目录(在转移之前,您的资讯内容中的表情无法正常显示)
a)将 old/images 目录和目录下的文件 移动到 新Discuz!X2产品的根目录中
7、 删除 convert 程序,以免给您的Discuz!X2安装带来隐患。
|