整理一下安装Ucenter Home1.5版本及Discuz BBS的过程及与公司自己的门户社区整合过程中的注意事项作为备忘。
下面以在服务器192.168.1.202上安装配置说明一下整合过程。
操作系统:Redhat AS 4
Mysql : 5.0
1、下载UCenter、UCenter Home、Discuz! 集成安装包
http://download.comsenz.com/UC_UCH_DZ/UC_UCH_DZ_SC_GBK.zip
2、下载ucenter home 1.5
http://www.jz123.cn/soft/download.asp?softid=12538&downid=62&id=12427
目前ucenter home 1.5版本为beta版本,官方尚未正式发布,由于功能相对全,因此采用此版本。
3、下载ucenter头像升级页面
http://u.discuz.net/download/avatar.zip
4、数据库安装,以utf8创建数据库并创建sns的用户
create database sns default character set utf8;
grant all privilege on *.* to sns@’localhost’ identified by ‘sns’;
flush privileges;
5、apache及php安装配置
使用Redhat AS 4自带的httpd及php,修改/etc/httpd/conf/httpd.conf
port 80
DocumentRoot "/var/www/html/sns"
6、安装UCenter、UCenter Home、Discuz! 集成安装包
mkdir /var/www/html/sns
unzip UC_UCH_DZ_SC_GBK.zip
mv upload/* /var/www/html/sns/
7、访问http://192.168.1.202,开始安装过程
UCenter的访问网址:
DISCUZ!的访问网址:
管理员访问网址:
http://192.168.1.202/bbs/admincp.php
UCenter Home的访问网址:
http://192.168.1.202/home
管理员访问网址:
http://192.168.1.202/home/admincp.php
8、将ucenter home从1.0版本升级ucenter home 1.5版本
将UCenter_Home_1[1].5RC1_SC_GBK.rar中的upload目录下的文件upload/ 目录中,除 config.new.php 文件、install/ 目录以外的其他所有文件全部上传到home/目录下并覆盖当前程序,特别注意的是,最新数据库结构 ./data/install.sql 文件不要忘记上传将程序包UCenter_Home_1[1].5RC1_SC_GBK.rar update目录中的update.php文件上传到home/目录目录,并在浏览器运行。
http://192.168.1.202/home/update.php
升级成功完成安装后:
删除home/update.php文件
删除 home/data/tpl_cache目录中的所有模板缓存文件
上传avatar.zip中的avatar.php到ucenter/下并覆盖原来的文件
9、为整合门户社区需要进行的修改问题汇总
9.1、ucenter home注册及登录页面校验逻辑修改
注释掉sns安装目录下home/source/function_common.php下的对formhash认证的函数,修改如下:
//判断提交是否正确
function submitcheck($var) {
if(!empty($_POST[$var]) && $_SERVER[‘REQUEST_METHOD’] == ‘POST’) {
if((empty($_SERVER[‘HTTP_REFERER’]) || preg_replace("/https?:\/\/([^\:\/]+).*/i", "\\1", $_SERVER[‘HTTP_REFERER’]) == preg_replace("/([^\:]+).*/", "\\1", $_SERVER[‘HTTP_HOST’])) ) {
//删除 && $_POST[‘formhash’] == formhash()
// if((empty($_SERVER[‘HTTP_REFERER’]) || preg_replace("/https?:\/\/([^\:\/]+).*/i", "\\1", $_SERVER[‘HTTP_REFERER’]) == preg_replace("/([^\:]+).*/", "\\1", $_SERVER[‘HTTP_HOST’])) && $_POST[‘formhash’] == formhash()) {
return true;
} else {
showmessage(‘submit_invalid’);
}
} else {
return false;
}
}
9.2、门户集成ucenter home注册页面实例
一个典型的注册页面
<form id="registerform" name="registerform" action="do.php?ac=register&&ref" method="post" class="c_form">
<table>
<tr><th>Username</th><td><input type="text" id="username" name="username" value="" /></td></tr>
<tr><th>Pass</th><td><input type="password" name="password" id="password" value="" /></td></tr>
<tr><th>Pass2</th><td><input type="password" name="password2" id="password2" value="" /></td></tr>
<tr><th>mail</th><td><input type="text" id="email" name="email" value="@" /></td></tr>
<tr><td><input type="submit" id="registersubmit" name="registersubmit" value="register" /></td></tr>
</table>
<input type="hidden" name="refer" value="space.php?do=home" />
</form>
注意上述提交按钮<input type="submit" id="registersubmit" name="registersubmit" value="register" />必须以此种形式提交,因为是ucenter程序验证了submit的name或id,
转载请注明:出家如初,成佛有余 » Ucenter Home 1.5安装及单点登录集成方案