discuz!X2 名片显示“内部错误,无法显示此内容”的解决办法

当discuz x2 出现 名片显示 内部错误 无法显示此内容的时候,检查下ucenter的通信是否正常,若不正常先解决通信正常。

discuz x2 出现 名片显示 内部错误 无法显示此内容的原因主要是“用户个人主页 {user}, {value}  space-{user}-{value}.html ” 这项勾选后, 原来的 Rewrite 规则里会把 home.php?mod=space&{user}={value} 变成 space-{user}-{value}.html,dz的comm.js 里面的名片相关的函数,它是用for循环遍历页面的链接,来得到用户对象,然后再分析链接得到用户的ID然后再生成显示名片的代码。此问题常见于windows主机下IIS环境中的站点,linux下的apache站点还没发现此错误。

1、如果嫌麻烦,直接在discuz!X2后台的SEO设置取消这项伪静态功能就可以了,并不影响整站的功能和使用,目前好像官方也没有启用该项。

2、用linux主机使用apache的伪静态规则文件,经测试可以正常显示。我司WIN主机的Rewrite.dll也支持apache规则,可以直接使用,规则如下:

RegistrationName=Longshui Chen
RegistrationCode=7Z3NU-7MAP5-JZDPH-PR9GK

[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32

## 修改以下语句中的 /discuz 为你的论坛目录地址,如果程序放在根目录中,请将 /discuz 修改为 /
RewriteBase /

# Rewrite 系统规则请勿修改
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^topic-(.+)\.html$ portal.php?mod=topic&topic=$1&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^article-([0-9]+)-([0-9]+)\.html$ portal.php?mod=view&aid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^forum-(\w+)-([0-9]+)\.html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ forum.php?mod=viewthread&tid=$1&extra=page\%3D$3&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^group-([0-9]+)-([0-9]+)\.html$ forum.php?mod=group&fid=$1&page=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^space-(username|uid)-(.+)\.html$ home.php?mod=space&$1=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^blog-([0-9]+)-([0-9]+)\.html$ home.php?mod=space&uid=$1&do=blog&id=$2&%1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^archiver/(fid|tid)-([0-9]+)\.html$ archiver/index.php?action=$1&value=$2&%1

直接复制以上规则文件,替换原有httpd.conf内规则即可。

Discuz!X2.0 后台邮件配置详解

1、进入后台 — 站长 — 邮件设置,如下图:

2、如上图,选择“通过 SOCKET 连接 SMTP 服务器发送(支持 ESMTP 验证)”。

3、点击“添加新SMTP服务器”,然后如下配置:

SMTP 服务器:smtp.163.com
这里设置的是发件邮箱的SMTP服务器地址,每个邮箱进入设置里面都会有这个地址,并且确保自己邮箱设置里面已经开启SMTP服务。比如腾讯的SMTP服务器:


SMTP 端口:25
这个端口绝大部分邮箱的SMTP端口都是25,所以这里一般不需要修改。

验证:勾选

发信人邮件地址:dzx@163.com
注意:

SMTP 身份验证用户名:dzx@163.com
注意:这里填写的是你发件邮箱的完整地址,而不是填写mutou.lee这样的又向前缀

SMTP 身份验证密码:就是你邮箱的密码

4、邮件头的分隔符: 这里一般都是选择第二项,绝大多数SMTP服务器都是这样的设置。

5、收件人地址中包含用户名: 选择“是”将在收件人的邮件地址中包含站点用户名

填写配置后确认提交,如下图:

未命名.jpg 

6、点击上方的检测按钮,来测试自己的配置是否正常,如下图:
未命名.jpg

OK,测试成功。

如果还有配置不成功的,尤其是独立服务器的,检查下自己服务器防火墙拦截规则,看看是不是防火墙或者杀毒软件将其拦截了,或者也可以咨询下你的空间商。

Discuz! X2.0群组推荐到论坛版块的横排显示方法(可自由设置横排显示个数)

群组推荐到论坛板块后无法横排显示,后台没有这个设置功能,默认一排只能显示一个群组,与上面横排显示的论坛板块不是很协调,如下图: 2.jpg

怎样才能横排显示推荐的群组呢,如下图:
3.jpg

这里讲一个方法,两步可以实现,需要修改程序和模板:
一、找到程序文件的”\source\module\forum\forum_forumdisplay.php”的305-312行:

if($_G['forum']['modrecommend'] && $_G['forum']['modrecommend']['open']) {
        $_G['forum']['recommendlist'] = recommendupdate($_G['fid'], $_G['forum']['modrecommend'], ”, 1);
}
$recommendgroups = array();
if($_G['forum']['status'] != 3 && $_G['setting']['groupstatus']) {
        loadcache(‘forumrecommend’);
        $recommendgroups = $_G['cache']['forumrecommend'][$_G['fid']];
}

修改为:

if($_G['forum']['modrecommend'] && $_G['forum']['modrecommend']['open']) {
        $_G['forum']['recommendlist'] = recommendupdate($_G['fid'], $_G['forum']['modrecommend'], ”, 1);
}
$recommendgroups = array();
if($_G['forum']['status'] != 3 && $_G['setting']['groupstatus']) {
        loadcache(‘forumrecommend’);
        $recommendgroups = $_G['cache']['forumrecommend'][$_G['fid']];
}

$_G['groups']['forumcolumns'] = 3 ;
$_G['groups']['forumcolwidth'] = (floor(100 / $_G['groups']['forumcolumns']) – 0.1).’%';
$_G['groups']['endrows'] = ”;
if($colspan = count($recommendgroups) % $_G['groups']['forumcolumns']) {
        while(($_G['groups']['forumcolumns'] – $colspan) > 0) {
                $_G['groups']['endrows'] .= ‘<td> </td>’;
                $colspan ++;
        }
        $_G['groups']['endrows'] .= ‘</tr>’;
}

$_G['groups']['forumcolumns'] = 3 ;”的值,既是横排显示的个数,可自由修改。

二、找到模板文件”\template\default\forum\forumdisplay.htm”的126-150行

<table cellspacing=”0″ cellpadding=”0″>
                                                        <!–{loop $recommendgroups $key $group}–>
                                                        <tr {if $key != 0}class=”fl_row”{/if}>
                                                                <td>
                                                                        <a href=”forum.php?mod=group&fid=$group[fid]” title=”$group[name]” target=”_blank”><img src=”$group[icon]” alt=”$group[name]” width=”32″ /></a>
                                                                </td>
                                                                <td>
                                                                        <h2><a href=”forum.php?mod=group&fid=$group[fid]” target=”_blank”>$group[name]</a><span> ($group[membernum] {lang activity_member_unit})</span></h2>
                                                                        <p><!–{echo cutstr($group[description], 100)}–></p>
                                                                </td>
                                                                <td>
                                                                        <span>$group[threads] {lang index_threads}</span>
                                                                </td>
                                                                <td>
                                                                        <div>
                                                                                <!–{if is_array($group['lastpost'])}–>
                                                                                <a href=”forum.php?mod=redirect&tid=$group[lastpost][tid]&goto=lastpost#lastpost”><!–{echo cutstr($group[lastpost][subject], 30)}–></a> <cite>$group[lastpost][dateline] <!–{if $group['lastpost']['author']}–><a href=”home.php?mod=space&username={$group[lastpost][encode_author]}”>{$group[lastpost][author]}</a><!–{else}–>$_G[setting][anonymoustext]<!–{/if}–></cite>
                                                                                <!–{else}–>
                                                                                {lang never}
                                                                                <!–{/if}–>
                                                                        </div>
                                                                </td>
                                                        </tr>
                                                        <!–{/loop}–>
                                                </table>

修改为:

<table cellspacing=”0″ cellpadding=”0″>
                                                        <!–{loop $recommendgroups $key $group}–>
                                                                <!–{if ($key % $_G['groups']['forumcolumns'] == 0)}–>
                                                                <tr {if $key != 0}class=”fl_row”{/if}>
                                                                <!–{/if}–>
                                                                <td width=”$_G[groups][forumcolwidth]“”>
                                                                        <div>
                                                                                <a href=”forum.php?mod=group&fid=$group[fid]” title=”$group[name]” target=”_blank”><img src=”$group[icon]” alt=”$group[name]” width=”32″ /></a>
                                                                        </div>
                                                                        <dl>
                                                                                <dt>
                                                                                        <h2><a href=”forum.php?mod=group&fid=$group[fid]” target=”_blank”>$group[name]</a><span> ($group[membernum] {lang activity_member_unit})</span></h2>
                                                                                        <p><!–{echo cutstr($group[description], 100)}–></p>
                                                                                </dt>
                                                                                <dd>
                                                                                        <span>$group[threads] {lang index_threads}</span>
                                                                                </dd>
                                                                                <dd>
                                                                                        <!–{if is_array($group['lastpost'])}–>
                                                                                        <a href=”forum.php?mod=redirect&tid=$group[lastpost][tid]&goto=lastpost#lastpost”><!–{echo cutstr($group[lastpost][subject], 30)}–></a> <cite>$group[lastpost][dateline] <!–{if $group['lastpost']['author']}–><a href=”home.php?mod=space&username={$group[lastpost][encode_author]}”>{$group[lastpost][author]}</a><!–{else}–>$_G[setting][anonymoustext]<!–{/if}–></cite>
                                                                                        <!–{else}–>
                                                                                        {lang never}
                                                                                        <!–{/if}–>
                                                                                </dd>
                                                                        </dl>
                                                                </td>
                                                        <!–{/loop}–>
                                                        $_G['groups']['endrows']
                                                        </tr>
                                                </table>

如何代码修改群组上限突破255?

1、在数据库运行:

ALTER TABLE `pre_common_usergroup_field` CHANGE `allowbuildgroup` `allowbuildgroup` INT( 1 ) UNSIGNED NOT NULL DEFAULT ’0′

2、修改语言包
“source\language\lang_admincp.php”(3591,53):        ‘usergroups_edit_group_build_comment’ => ‘范围1-255,0为不允许建立群组’,
“\source\language\lang_admincp_searchindex.php”(5910,22):      5 => ‘范围1-255,0为不允许建立群组’,

把提示删掉就可以了

Discuz! X2 修改群组名称字数限制方法

discuz! X2的群组的名称默认只能填10个汉字,超出部分就自动截掉,有很多站点却需要更多的字符显示群组名;字数限制,好处是美观,但限制了显示的不完整,有时候还是需要修改一下,如果考虑美观的话,前台调用的话,不显示多余的即可。
系统运行的原理是填写群组名称,聚焦离开文本框触动ajax事件给你检测是否超出20个字符,超出就会提示你多的会被截取掉,提交后程序有截取函数截取多余的字符,要实现修改群组字数的限制,需要修改三个文件:ajax文件,程序文件和语言包的提示文字(现以20个字节修改为30个字节为例)

1,找到论坛根目录下的文件/source/module/forum/forum_ajax.php,修改ajax检验长度代码
源文件140行代码
$tmpname = cutstr($groupname, 20, ”);
修改为
$tmpname = cutstr($groupname, 30, ”);
2,找到论坛根目录下的文件/source/module/forum/forum_group.php,修改提交截取代码代码
源文件280行代码
$name = censor(addslashes(dhtmlspecialchars(cutstr(stripslashes(trim($_G['gp_name'])), 20, ”))));
修改为
$name = censor(addslashes(dhtmlspecialchars(cutstr(stripslashes(trim($_G['gp_name'])), 30, ”))));
3,找到论坛根目录下的文件/source/language/lang_message.php ,检验名称长度提示信息
源文件232行代码
‘group_name_oversize’ => ‘抱歉,{_G/setting/navs/3/navname}名称超过20个字节将被截断’,
复制代码修改为
‘group_name_oversize’ => ‘抱歉,{_G/setting/navs/3/navname}名称超过30个字节将被截断’,
完成这三步就完成了修改群组名称的限制。由于数据库字段还有字数限制,其实数据库允许输入的最大字符数是80,也就是说上面修改群组名称超过80之后也是不显示的。

Discuz! 7.2 升级至 Discuz! X2.0

====================================
Discuz! 7.2 升级至 Discuz! X2.0 说明
====================================

I 升级前的准备
---------------
1. 建立程序备份目录,例如 old/
2. 将原论坛所有程序移动到 old/ 目录中
3. 上传 Discuz! X 产品的 upload/ 目录中的程序到论坛目录
4. 执行安装程序 /install
   安装的时候请指定原 Discuz! 7.2 挂接的UCenter Server地址(如果 UCenter版本低于1.6.0,需先升级 UCenter )

II 升级论坛数据
---------------
1. 安装完毕,测试论坛可以正常运行以后,上传 Discuz! X Convert 程序到论坛更目录
2. 执行 /convert
3. 选择相应的程序版本,开始转换
4. 转换过程中不可擅自中断,直到程序自动执行完毕。
5. 转换过程可能需要较长时间,且消耗较多服务器资源,您应当选择服务器空闲的时候执行

III 升级完毕, 还要做的几件事
--------------------------
1. 编辑新论坛的config/config_global.php 文件,设定好创始人。
   在config/config_global.php文件中,设定 $_config['admincp']['founder'] = '1';  数字为创始人的UID
2. 直接访问新论坛的后台,访问地址:http://您的域名/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. 如果使用过分类信息,需要重新整理一次分类信息(后台->更新统计->分类信息整理)。
10. 使用创始人账号, 进入 Ucenter 后台, 修改应用,将论坛类型改为 DiscuzX。

SupeSite 7.5 升级至 Discuz! X2.0

====================================
SupeSite 7.5 升级至 Discuz! X2.0 说明
====================================

特别警示!!!
Discuz! X2.0中并未具备SupeSite 7.5中的全部功能,
此转换程序,仅转换SupeSite 7.5中的资讯分类、资讯文章数据到 Discuz! X2.0产品的文章系统中。
其他数据将不进行转换。
因此,数据转换后,Discuz! X2.0产品存在原有SupeSite功能丢失和数据丢失问题,请自行权衡决定是否转换升级。

I 升级前的准备
---------------
1. 建立程序备份目录,例如 old
2. 将原SupeSite所有程序移动到 old 目录中
3. 上传 Discuz! X2.0 产品的upload目录中的程序到SupeSite目录
4. 执行安装程序 /install
   安装的时候请指定原SupeSite挂接的UCenter Server地址(如果 UCenter版本低于1.6.0,需先升级 UCenter )

II 升级SupeSite数据
---------------
1. 安装完毕,测试Discuz! X2.0可以正常运行以后,上传convert 程序到Discuz! X2.0根目录
2. 执行 /convert
3. 选择相应的程序版本,开始转换
4. 转换过程中不可擅自中断,直到程序自动执行完毕。
5. 转换过程可能需要较长时间,且消耗较多服务器资源,您应当选择服务器空闲的时候执行

III 升级完毕, 还要做的几件事
--------------------------
1. 编辑新Discuz! X2.0的 config/config_global.php 文件,设定好创始人
2. 直接访问新Discuz! X2.0的 admin.php
3. 使用创始人帐号登录,进入后台更新缓存
4. 新系统增加了很多设置项目,包括用户权限、组权限、论坛板块等等,您需要仔细的重新设置一次。
5. 转移旧附件目录到新产品根目录(在转移之前,您的资讯内容中的图片无法正常显示)
   a)将 old/attachments 目录和目录下的文件 全部移动到 新Discuz! X2.0产品的/data/attachment/portal/目录中
   b) 在原 SS7 源码下找到图标 images/base/attachment.gif,放在 Disucuz! X2.0 的目录 static/image/filetype/ 下;
   c) 找到 source/module/portal/portal_view.php 文件,在代码“$content['content'] = blog_bbcode($content['content']);”后换行添加以下代码:

	$ss_url = 'http://your_ss_site_url/'; // 请将此链接地址改为您的 SS 站点地址!!!
	$findarr = array(
		$ss_url.'batch.download.php?aid=', // 附件下载地址
		$ss_url.'attachments/',  // 附件图片目录
		$ss_url.'images/base/attachment.gif'  // 附件下载图标
	);
	$replacearr = array(
		'porta.php?mod=attachment&id=',
		$_G['setting']['attachurl'].'/portal/',
		STATICURL.'image/filetype/attachment.gif'
	);
	$content['content'] = str_replace($findarr, $replacearr, $content['content']);

6. 转移旧图片目录到新产品根目录(在转移之前,您的资讯内容中的表情无法正常显示)
   a)将 old/images 目录和目录下的文件 移动到 新Discuz! X2.0产品的根目录中
7. 删除 convert 程序,以免给您的Discuz! X2.0安装带来隐患。

UCenter Home 2.0 升级至 Discuz! X2.0

====================================
UCenter Home 2.0 升级至 Discuz! X2.0 说明
====================================

特别警示!!!
由于UCHome与Discuz!部分功能进行了整合性融合,因此UCHome的部分功能,在整合到Discuz! X后将会部分丢失,
其中包括:
由于新增专题功能,原UCH热闹功能将不再支持;
UCH投票、UCH活动将与论坛投票贴、活动贴的形式融合为一体,活动相册、活动群组功能将不再支持;
UCH群组将以新的群组功能存在,原群组相册、群组活动功能将不再支持;
个人资料进行了新的调整,UCH原个人资料中的学校、工作信息将需要重新填写;
UCH的全站实名功能不再支持;

请根据自己建站需求,权衡决定是否将UCHome转换升级到Discuz! X。

I 升级前的准备
---------------
1. 建立程序备份目录,例如 old
2. 将原UCHome所有程序移动到 old 目录中
3. 上传 Discuz! X 产品的upload目录中的程序到UCHome目录
4. 执行安装程序 /install
   安装的时候请指定原UCHome挂接的UCenter Server地址(如果 UCenter版本低于1.6.0,需先升级 UCenter )

II 升级UCHome数据
---------------
1. 安装完毕,测试Discuz! X可以正常运行以后,上传convert 程序到Discuz! X根目录
2. 执行 /convert
3. 选择相应的程序版本,开始转换
4. 转换过程中不可擅自中断,直到程序自动执行完毕。
5. 转换过程可能需要较长时间,且消耗较多服务器资源,您应当选择服务器空闲的时候执行

III 升级完毕, 还要做的几件事
--------------------------
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! X的 ./source/include/space/space_blog.php 程序
	 找到:
	 $blog['message'] = blog_bbcode($blog['message']);
	 在下面增加如下代码:
	 $home_url = 'http://your_home_site_url/'; // 请将此链接地址改为您的 UCHome 站点地址!!!
	 $bbs_url = 'http://your_bbs_site_url/'; // 请将此链接地址改为您的 BBS 站点地址!!!
	 $findarr = array(
		'<img src="attachment/',  //原uchmoe附件图片目录
		'<IMG src="'.$home_url.'attachment/',  // 原UCHome附件图片目录
		$bbs_url.'attachments/month',  // 原论坛附件图片目录
	 );
	 $replacearr = array(
		'<img src="'.$_G['setting']['attachurl'].'album/',
		'<IMG src="'.$_G['setting']['attachurl'].'album/',
		$bbs_url.$_G['setting']['attachurl'].'forum/month',
	 );
	 $blog['message'] = str_replace($findarr, $replacearr, $blog['message']);

	 如果你的UCHome的附件不是存放在默认的 ./attachment 目录,那么
	 修正上面代码的 <img src="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! X产品的所有功能均正常后,可以删除 旧的程序备份和数据备份

Discuz!7.2/UCHome 2.0/SupeSite 7.5 到 Discuz!X1.5 升级/转换图文教程

Discuz!7.2/UCHome 2.0/SupeSite 7.5 到 Discuz!X1.5 升级/转换图文教程  

说明:本文档用于帮助您将原有社区产品升级或者转换到 Discuz! X1.5 正式版本。

在您开始升级之前,请务必逐条仔细阅读以下的注意事项:
1、升级之前,为了确保无误,强烈建议您备份原有数据,包括备份 UCenter 的数据,我们无法对升级前没有备份的用户提供任何技术支持。
2、通常情况下,我们的升级程序放置在发行版本的 ./utilities/convert 目录中,此程序可以独立于产品运行。
3、我们不能保障升级或者转换到 Discuz! X 产品当中所有的数据都是有效的,某些插件或者自行开发的功能数据需要您自行转换。
4、大多数情况下,您升级到 Discuz! X 产品以后,需要进入后台进行一系列重新设置,否则某些功能可能无法正常使用。
5、 除非有特殊的声明,我们的转换程序不会改变您原有的数据格式和设置,他会将原有数据重新复制一份,并做格式转换。所以,在转换开始之前,您应当检查您的数据库存储空间是否够用。假设您原有数据是 100M,您至少需要 200M 以上的数据剩余空间,否则可能无法转换成功。
6、升级成功后,请您删除 convert 程序,以避免可能的安全问题。
7、升级前请关闭所有插件和水印,风格恢复默认。

一、升级前的准备
1、下载 Discuz! X1.5 正式版本到本地或者服务器上
下载地址:http://download.comsenz.com/DiscuzX/1.5/
解压缩得到如下图所示的三个文件:
1.jpg
upload 这个目录下面的所有文件是我们需要上传到服务器上的可用程序文件;
readme 目录为产品介绍、授权、安装、升级、转换以及版本更新日志说明;
utility 目录为论坛附带工具,我们这次升级程序存放在 ./utilities/convert 目录中此程序可以独立于产品运行。

2、进入您原来的系统,关闭您的站点。
1)关闭论坛
用管理员登录论坛后台 => 全局 => 站点信息 => 论坛关闭:选择“是”,如图:

2.jpg
2)关闭UCHome
用管理员登录 UCHome 后台 => 基本设置 => 站点信息 => 站点关闭访问:选择“是”,如图:

21.jpg

3)关闭SupeSite
用管理员登录 SupeSite 后台 => 系统管理 => 系统设置 => 暂时关闭站点 => 选择站点关闭,如图:

22.jpg
3、文件备份

注意:ucenter文件请不要移动。
如果您之前在论坛的目录下安装了品牌空间,品牌空间的目录也请不要移动。否则会导致无法使用。
1)论坛程序及其附件的备份
推荐您把论坛目录下的所有目录和文件下载或者拷贝到你要备份的地方,如果您没有对论坛程序和模板做过很大的改动,那么只要备份 attachments (附件目录)就可以了。
我们常用的对论坛程序及其附件的备份方法为:在原论坛根目录下新建一个目录 oldbbs,然后把所有文件全部移动到 oldbbs 目录中。
2)UCHome程序及其附件的备份
推荐您把 UCHome 目录下的所有目录和文件下载或者拷贝到你要备份的地方,如 oldhome。
3)SupeSite程序及其附件的备份
推荐您把 SupeSite 目录下的所有目录和文件下载或者拷贝到你要备份的地方,如 oldss。

4、数据库备份
可以单独备份各个应用的数据,也可以直接在 UCenter 后台备份所有应用的数据,单独备份以论坛为例:
独立主机直接到 MySQL 的 data 目录拷贝一份当前 Discuz! 使用的数据库即可,记得拷贝之前停止 MySQL 服务,否则会造成备份数据的损坏。
虚拟主机用户推荐直接在论坛后台进行备份,用管理员登录论坛后台 => 工具 => 数据库 => 备份:推荐备份“论坛全部数据”,如图:

3.jpg
如果要对备份数据再做其他要求可以点击上图中的“更多选项”根据需要进行选择:
4.jpg

使用 Discuz! 后台备份产生的备份文件在 {站点根目录}/forumdata/ 文件夹下,目录名形如 backup_3c1839
UCenter 备份:
在 UCenter 后台对所有数据进行备份,如果是独立主机直接到 MySQL 的 data 目录分别拷贝一份当前所有应用使用的数据库即可,记得拷贝之前停止 MySQL 服务,否则会造成备份数据的损坏。
虚拟主机用户登录 UCenter 后台 => 数据备份,如下图所示:

23.jpg

使用 UCenter 备份产生的备份文件
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!X1.5 程序到您的站点目录。

5.jpg

6、正确安装 Discuz!X1.5(如果您的 Ucenter Server 是独立安装的,您需要提供他的访问路径和创始人密码)也可以全新安装。
Discuz! X1.5 全新安装图文教程 如果全新安装的话需要把之前的 UCenter 数据导入到现在的 UCenter 数据库中不然老会员将无法登录。

二、转换/升级数据到 Discuz! X1.5

1、上传 utilities 目录中的 convert 程序到您的站点。

6.jpg

2、在浏览器中运行 http://www.domain.com/bbs/convert 开始升级/转换(其中 http://www.domain.com/bbs 为你的论坛访问地址)
3、选择产品转换程序,convert 程序当中集成了多种程序可以转换到 Discuz! X1.5,请您根据系统进行选择。
注意:
1、在开始转换之前,请确保本程序目录下的 data 目录为可写权限,否则无法存储转换设置。
2、如果有 Discuz! 和 UChome 同时需要升级,请务必先升级 Discuz!论坛,我们先升级 Discuz! ,点击修改,对要升级的数据库信息进行设置,如下图所示

7.jpg

3.1、设置服务器信息

8.jpg

数据源服务器设置 (原始版本的数据库):可以对照之前版本的 config.inc.php 文件中的数据库信息进行填写目标服务器设置 (已正确安装 Discuz! X1.5 的数据库):填写刚刚安装好的 Discuz! X1.5 的数据库信息。
填写完成后,点击“保存服务器设置”。

3.2、配置转换过程

9.jpg

默认全选即可。

3.3、执行数据转换

10.jpg
升级/转换过程全部为自动,无需人工操作,请您耐心等待。

3.4、转换完成
会提示您本次升级开始时间和升级结束时间以及升级累计执行时间,如果数据较少,升级是比较快的。升级/转换完成后如下图所示:

11.jpg

4、升级 UCHome
说明:
由于UCHome与Discuz!部分功能进行了整合性融合,因此UCHome的部分功能,在整合到Discuz! X后将会部分丢失。
其中包括:
由于新增专题功能,原UCH热闹功能将不再支持;
UCH投票、UCH活动将与论坛投票贴、活动贴的形式融合为一体,活动相册、活动群组功能将不再支持;
UCH群组将以新的群组功能存在,原群组相册、群组活动功能将不再支持;
个人资料进行了新的调整,UCH原个人资料中的学校、工作信息将需要重新填写;
UCH的全站实名功能不再支持;
请根据自己建站需求,权衡决定是否将UCHome转换升级到Discuz! X。
点击 UCenter Home 2.0 右侧的“开始”链接,如下图所示:

12.jpg

然后进行数据库的配置。

24.jpg

数据源服务器设置 (原始版本的数据库):可以对照之前版本的 config.php 文件中的数据库信息进行填写目标服务器设置 (已正确安装 Discuz! X1.5 的数据库):填写刚刚安装好的 Discuz! X1.5 的数据库信息。
填写完成后,点击“保存服务器设置”。

4.1、配置转换过程

25.jpg

默认全选即可,点击“开始转换”。

4.2、执行数据转换

26.jpg

用户组配置:这里对应列出了UCHome中的用户组转到Discuz! X1.5 的用户组,可以根据自己站点的情况进行选择积分配置:来源积分指的是UCHome中的积分,目标积分指的是转到Discuz! X 对应的积分下,比如UCHome中的积分对应Discuz! X1.5 中的金钱,这里站长可以根据自己站点的情况进行自由选择。

数据转换配置:源数据包括投票和活动,转到Discuz! X1.5对应的版块下面。
设置完成并保存后,开始自动转换,如下图所示:

27.jpg
4.3、转换完成
会提示您本次升级开始时间和升级结束时间以及升级累计执行时间

5、升级 SupeSite
说明:Discuz! X1.5中并未具备SupeSite 7.5中的全部功能,此转换程序,仅转换SupeSite 7.5中的资讯分类、资讯文章数据到 Discuz! X1.5产品的文章系统中。其他数据将不进行转换。
因此,数据转换后,Discuz! X1.5 产品存在原有 SupeSite 功能丢失和数据丢失问题,请自行权衡决定是否转换升级。
点击 SupeSite 7.5 右侧的“开始”链接,如下图所示:

13.jpg

然后进行数据库的配置。

28.jpg

数据源服务器设置 (原始版本的数据库):可以对照之前版本的 config.php 文件中的数据库信息进行填写目标服务器设置 (已正确安装 Discuz! X 的数据库):填写刚刚安装好的 Discuz! X 的数据库信息。
填写完成后,点击“保存服务器设置”。

5.1、配置转换过程

29.jpg

默认全选即可,点击“开始转换”。

5.2、执行数据转换

30.jpg

开始自动转换,无需人工干预。

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! X1.5的 ./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 目录,那么修正上面代码的 <img src=”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! X1.5的所有功能均正常后,可以删除旧的程序备份和数据备份

SupeSite的善后操作:
1、编辑新Discuz! X1.5的 config/config_global.php 文件,设定好创始人
2、直接访问新Discuz! X1.5的 admin.php
3、使用创始人帐号登录,进入后台更新缓存
4、新系统增加了很多设置项目,包括用户权限、组权限、论坛板块等等,您需要仔细的重新设置一次。
5、转移旧附件目录到新产品根目录(在转移之前,您的资讯内容中的图片无法正常显示)
   a)将 old/attachments 目录和目录下的文件 全部移动到 新Discuz! X1.5产品的/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! X1.5产品的根目录中
7、 删除 convert 程序,以免给您的Discuz! X1.5安装带来隐患。

Windows XP架设FTP服务器的图解方法

Windows XP系统中利用IIS架设FTP服务器的图解超详细方法教程 当然基于XP还有很多别的服务器可以架设,但个人网站一般最经常使用的就是这两种服务器,所以其它的就不再多说了,最后提醒一下,建立自己的服务器,必须提高自己的网络安全意识,否则损失不小。

\" width= 

Windows XP系统中利用IIS架设FTP服务器的图解超详细方法教程:

IIS默认有一个默认的FTP站,因此你可以通过修改默认FTP站点来满足你的需要。

在默认FTP站点上点右键如图:

\" width= 

输入描述:梦幻末世纪,设置IP地址:192.168.1.12,端口默认为21,一般不需要更改。

设置连接,同Web服务器一样注意启用日志纪录。

然后选中主目录对话框如图:

\" width= 

基本上按照上图的设置就可以了,指定目录的访问权限。一般选择读取,你也可以以后再指定访问权限,让管理员具体写入的权限,让一般文章者具有读取的权限。

在安全账户中修改账户信息,根据自己的需要修改,如下图:

\" width= 

允许匿名连接选项一定要填上。否则用户访问此站点时需要用户名和密码。默认状态下是可以允许匿名访问的。用户名为anonymous,密码为空。

定义用户访问FTP站点和退出站点时的信息以及最大连接数,如图:

\" width= 

当然大家也可以根据自己的需要和爱好来设置。

最后测试:

在运行中,打开cmd,然后输入 ftp 192.168.1.12(刚才设置的IP地址)回车,输入用户名anonymous。

然后回车,要求输入密码,因为密码为空,按回车即可!(日后为了网站的安全,可以设置禁止匿名访问,并加强密码,这里为了测试方便所以设置匿名用户)如果和下图一样那么祝贺你,ftp网站配置成功,剩下的就是你丰富自己的站点内容了。

\" border=